@nocobase/plugin-verification 2.1.0-beta.9 → 2.2.0-alpha.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 (47) hide show
  1. package/client-v2.d.ts +2 -0
  2. package/client-v2.js +1 -0
  3. package/dist/client/152.480ad14fee48be71.js +10 -0
  4. package/dist/client/478.bb62159e1d524faa.js +10 -0
  5. package/dist/client/index.js +1 -1
  6. package/dist/client-v2/190.596918843af85477.js +10 -0
  7. package/dist/client-v2/290.a651bc7c42fc98bc.js +10 -0
  8. package/dist/client-v2/548.eb3ed70d62d68d60.js +10 -0
  9. package/dist/client-v2/81.b8599d97bf4ca2a8.js +10 -0
  10. package/dist/client-v2/934.a3c0fa32883528e4.js +10 -0
  11. package/dist/client-v2/973.8a85e3793371482b.js +10 -0
  12. package/dist/client-v2/components/VerificationCode.d.ts +49 -0
  13. package/dist/client-v2/components/VerifierSelect.d.ts +45 -0
  14. package/dist/client-v2/index.d.ts +19 -0
  15. package/dist/client-v2/index.js +10 -0
  16. package/dist/client-v2/locale.d.ts +17 -0
  17. package/dist/client-v2/otp-sms-provider-manager.d.ts +35 -0
  18. package/dist/client-v2/otp-verification/sms/AdminSettingsForm.d.ts +21 -0
  19. package/dist/client-v2/otp-verification/sms/BindForm.d.ts +18 -0
  20. package/dist/client-v2/otp-verification/sms/VerificationForm.d.ts +18 -0
  21. package/dist/client-v2/otp-verification/sms/index.d.ts +25 -0
  22. package/dist/client-v2/otp-verification/sms/providers/AliyunSettings.d.ts +17 -0
  23. package/dist/client-v2/otp-verification/sms/providers/TencentSettings.d.ts +17 -0
  24. package/dist/client-v2/pages/VerifiersPage.d.ts +61 -0
  25. package/dist/client-v2/plugin.d.ts +25 -0
  26. package/dist/client-v2/user-center/MyVerifiers.d.ts +19 -0
  27. package/dist/client-v2/user-center/VerificationUserCenterItemModel.d.ts +29 -0
  28. package/dist/client-v2/verification-manager.d.ts +49 -0
  29. package/dist/externalVersion.js +10 -7
  30. package/dist/node_modules/@alicloud/dysmsapi20170525/dist/client.js +2 -2
  31. package/dist/node_modules/@alicloud/{openapi-client → dysmsapi20170525}/node_modules/@alicloud/openapi-util/dist/client.js +4 -28
  32. package/dist/node_modules/@alicloud/{openapi-client → dysmsapi20170525}/node_modules/@alicloud/openapi-util/package.json +1 -1
  33. package/dist/node_modules/@alicloud/{openapi-client → dysmsapi20170525}/node_modules/@alicloud/openapi-util/src/client.ts +5 -25
  34. package/dist/node_modules/@alicloud/dysmsapi20170525/package.json +1 -1
  35. package/dist/node_modules/@alicloud/openapi-client/dist/client.js +2 -2
  36. package/dist/node_modules/@alicloud/openapi-client/package.json +1 -1
  37. package/dist/node_modules/@alicloud/tea-util/dist/client.js +1 -1
  38. package/dist/node_modules/@alicloud/tea-util/package.json +1 -1
  39. package/dist/node_modules/tencentcloud-sdk-nodejs-sms/package.json +1 -1
  40. package/dist/node_modules/tencentcloud-sdk-nodejs-sms/tencentcloud/index.js +5 -5
  41. package/dist/server/collections/otp-records.js +1 -0
  42. package/dist/server/collections/users-verifiers.js +1 -0
  43. package/dist/server/collections/verifiers.js +2 -1
  44. package/package.json +4 -2
  45. package/dist/client/0c72f307d843dc6a.js +0 -10
  46. package/dist/client/20e6e5fa4c397f95.js +0 -10
  47. /package/dist/node_modules/@alicloud/{openapi-client → dysmsapi20170525}/node_modules/@alicloud/openapi-util/dist/client.d.ts +0 -0
package/client-v2.d.ts ADDED
@@ -0,0 +1,2 @@
1
+ export * from './dist/client-v2';
2
+ export { default } from './dist/client-v2';
package/client-v2.js ADDED
@@ -0,0 +1 @@
1
+ module.exports = require('./dist/client-v2/index.js');
@@ -0,0 +1,10 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+
10
+ "use strict";(self.webpackChunk_nocobase_plugin_verification=self.webpackChunk_nocobase_plugin_verification||[]).push([["152"],{75:function(e,t,n){n.r(t),n.d(t,{Verifiers:function(){return I},useAdminSettingsForm:function(){return T},Settings:function(){return k}});var o=n(155),r=n.n(o),i=n(342),c={type:"void",properties:{drawer:{type:"void",title:'{{ t("Add new") }}',"x-component":"Action.Drawer","x-decorator":"FormV2","x-use-decorator-props":"useCreateFormProps",properties:{name:{type:"string","x-decorator":"FormItem",title:'{{ t("UID") }}',"x-component":"Input","x-validator":function(e){return/^[a-zA-Z0-9_-]+$/.test(e)?"":"a-z, A-Z, 0-9, _, -"}},title:{type:"string","x-decorator":"FormItem",title:'{{ t("Title") }}',"x-component":"Input"},description:{"x-decorator":"FormItem",type:"string",title:'{{ t("Description") }}',"x-component":"Input.TextArea"},options:{type:"object","x-component":"Settings"},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{ t("Cancel") }}',"x-component":"Action","x-use-component-props":"useCancelActionProps"},submit:{title:'{{ t("Submit") }}',"x-component":"Action","x-component-props":{type:"primary"},"x-use-component-props":"useCreateActionProps"}}}}}}},p={type:"void",name:"verifiers",properties:{card:{type:"void","x-component":"CardItem","x-component-props":{heightMode:"fullHeight"},"x-decorator":"TableBlockProvider","x-decorator-props":{collection:"verifiers",action:"list"},properties:{actions:{type:"void","x-component":"ActionBar","x-component-props":{style:{marginBottom:20}},properties:{refresh:{title:"{{t('Refresh')}}","x-component":"Action","x-use-component-props":"useRefreshActionProps","x-component-props":{icon:"ReloadOutlined"}},bulkDelete:{title:"{{t('Delete')}}","x-action":"destroy","x-component":"Action","x-use-component-props":"useBulkDestroyActionProps","x-component-props":{icon:"DeleteOutlined",confirm:{title:"{{t('Delete record')}}",content:"{{t('Are you sure you want to delete it?')}}"}}},add:{type:"void","x-component":"AddNew",title:"{{t('Add new')}}","x-align":"right"}}},table:{type:"array","x-component":"TableV2","x-use-component-props":"useTableBlockProps","x-component-props":{rowKey:"name",rowSelection:{type:"checkbox"}},properties:{column1:{type:"void",title:'{{ t("UID") }}',"x-component":"TableV2.Column",properties:{name:{type:"string","x-component":"Input","x-read-pretty":!0}}},column2:{type:"void",title:'{{ t("Title") }}',"x-component":"TableV2.Column",properties:{title:{type:"string","x-component":"Input","x-read-pretty":!0}}},column3:{type:"void",title:'{{ t("Verification type") }}',"x-component":"TableV2.Column",properties:{verificationType:{type:"string","x-component":"Select","x-read-pretty":!0,enum:"{{ types }}"}}},column4:{type:"void",title:'{{ t("Description") }}',"x-component":"TableV2.Column",properties:{description:{type:"string","x-component":"Input.TextArea","x-component-props":{ellipsis:!0},"x-pattern":"readPretty"}}},column5:{type:"void",title:'{{ t("Actions") }}',"x-decorator":"TableV2.Column.ActionBar","x-component":"TableV2.Column",properties:{actions:{type:"void","x-component":"Space","x-component-props":{split:"|"},properties:{edit:{type:"void",title:'{{ t("Edit") }}',"x-action":"update","x-component":"Action.Link","x-component-props":{openMode:"drawer"},properties:{drawer:{type:"void",title:'{{ t("Edit record") }}',"x-component":"Action.Drawer","x-decorator":"FormV2","x-use-decorator-props":"useEditFormProps",properties:{title:{type:"string","x-decorator":"FormItem",title:'{{ t("Title") }}',"x-component":"Input"},description:{"x-decorator":"FormItem",type:"string",title:'{{ t("Description") }}',"x-component":"Input.TextArea"},options:{type:"object","x-component":"Settings"},footer:{type:"void","x-component":"Action.Drawer.Footer",properties:{cancel:{title:'{{ t("Cancel") }}',"x-component":"Action","x-use-component-props":"useCancelActionProps"},submit:{title:'{{ t("Submit") }}',"x-component":"Action","x-component-props":{type:"primary"},"x-use-component-props":"useEditActionProps"}}}}}}},destroy:{type:"void",title:'{{ t("Delete") }}',"x-action":"destroy","x-component":"Action.Link","x-use-component-props":"useDestroyActionProps","x-component-props":{confirm:{title:"{{t('Delete record')}}",content:"{{t('Are you sure you want to delete it?')}}"}}}}}}}}}}}}},s={name:"verifiers",autoGenId:!1,fields:[{type:"uid",name:"name",primaryKey:!0},{type:"string",name:"title"},{type:"string",name:"verificationType"},{type:"string",name:"description"},{type:"jsonb",name:"options"},{interface:"m2m",type:"belongsToMany",name:"users",target:"users",foreignKey:"verifier",otherKey:"userId",onDelete:"CASCADE",sourceKey:"name",targetKey:"id",through:"usersVerifiers"}]},a=n(872),u=n(59),l=n(375),m=(0,o.createContext)({type:""});m.displayName="VerificationTypeContext";var y=(0,o.createContext)({types:[]});y.displayName="VerificationTypesContext";var f=n(230),d=n(452),v=n(166);function x(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,o=Array(t);n<t;n++)o[n]=e[n];return o}function b(e,t,n,o,r,i,c){try{var p=e[i](c),s=p.value}catch(e){n(e);return}p.done?t(s):Promise.resolve(s).then(o,r)}function A(e){return function(){var t=this,n=arguments;return new Promise(function(o,r){var i=e.apply(t,n);function c(e){b(i,o,r,c,p,"next",e)}function p(e){b(i,o,r,c,p,"throw",e)}c(void 0)})}}function g(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,o,r=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var i=[],c=!0,p=!1;try{for(r=r.call(e);!(c=(n=r.next()).done)&&(i.push(n.value),!t||i.length!==t);c=!0);}catch(e){p=!0,o=e}finally{try{c||null==r.return||r.return()}finally{if(p)throw o}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return x(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return x(e,t)}}(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function h(e,t){var n,o,r,i={label:0,sent:function(){if(1&r[0])throw r[1];return r[1]},trys:[],ops:[]},c=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),p=Object.defineProperty;return p(c,"next",{value:s(0)}),p(c,"throw",{value:s(1)}),p(c,"return",{value:s(2)}),"function"==typeof Symbol&&p(c,Symbol.iterator,{value:function(){return this}}),c;function s(p){return function(s){var a=[p,s];if(n)throw TypeError("Generator is already executing.");for(;c&&(c=0,a[0]&&(i=0)),i;)try{if(n=1,o&&(r=2&a[0]?o.return:a[0]?o.throw||((r=o.return)&&r.call(o),0):o.next)&&!(r=r.call(o,a[1])).done)return r;switch(o=0,r&&(a=[2&a[0],r.value]),a[0]){case 0:case 1:r=a;break;case 4:return i.label++,{value:a[1],done:!1};case 5:i.label++,o=a[1],a=[0];continue;case 7:a=i.ops.pop(),i.trys.pop();continue;default:if(!(r=(r=i.trys).length>0&&r[r.length-1])&&(6===a[0]||2===a[0])){i=0;continue}if(3===a[0]&&(!r||a[1]>r[0]&&a[1]<r[3])){i.label=a[1];break}if(6===a[0]&&i.label<r[1]){i.label=r[1],r=a;break}if(r&&i.label<r[2]){i.label=r[2],i.ops.push(a);break}r[2]&&i.ops.pop(),i.trys.pop();continue}a=t.call(e,i)}catch(e){a=[6,e],o=0}finally{n=r=0}if(5&a[0])throw a[1];return{value:a[0]?a[1]:void 0,done:!0}}}}var C=function(){var e=(0,o.useContext)(m).type;return{form:(0,o.useMemo)(function(){return(0,d.createForm)({initialValues:{name:"v_".concat((0,v.uid)()),verificationType:e}})},[e])}},w=function(){var e=(0,i.useCollectionRecordData)();return{form:(0,o.useMemo)(function(){return(0,d.createForm)({initialValues:e})},[e])}},P=function(){var e=(0,i.useActionContext)().setVisible,t=(0,f.useForm)();return{type:"default",onClick:function(){e(!1),t.reset()}}},S=function(){var e=(0,i.useActionContext)().setVisible,t=u.App.useApp().message,n=(0,f.useForm)(),o=(0,i.useDataBlockResource)(),r=(0,i.useDataBlockRequest)().refresh,c=(0,a.Au)().t;return{type:"primary",onClick:function(){return A(function(){var i;return h(this,function(p){switch(p.label){case 0:return[4,n.submit()];case 1:return p.sent(),i=n.values,[4,o.create({values:i})];case 2:return p.sent(),r(),t.success(c("Saved successfully")),e(!1),n.reset(),[2]}})})()}}},D=function(){var e=(0,i.useActionContext)().setVisible,t=u.App.useApp().message,n=(0,f.useForm)(),o=(0,i.useDataBlockResource)(),r=(0,i.useDataBlockRequest)().refresh,c=(0,i.useCollection)().getFilterTargetKey(),p=(0,a.Au)().t;return{type:"primary",onClick:function(){return A(function(){var i;return h(this,function(s){switch(s.label){case 0:return[4,n.submit()];case 1:return s.sent(),i=n.values,[4,o.update({values:i,filterByTk:i[c]})];case 2:return s.sent(),r(),t.success(p("Saved successfully")),e(!1),n.reset(),[2]}})})()}}},O=function(){var e=(0,a.Au)().t,t=g((0,o.useState)(!1),2),n=t[0],p=t[1],s=g((0,o.useState)(""),2),f=s[0],d=s[1],v=(0,o.useContext)(y).types.map(function(e){var t,n;return t=function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},o=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(o=o.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),o.forEach(function(t){var o;o=n[t],t in e?Object.defineProperty(e,t,{value:o,enumerable:!0,configurable:!0,writable:!0}):e[t]=o})}return e}({},e),n=n={onClick:function(){p(!0),d(e.value)}},Object.getOwnPropertyDescriptors?Object.defineProperties(t,Object.getOwnPropertyDescriptors(n)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(n)).forEach(function(e){Object.defineProperty(t,e,Object.getOwnPropertyDescriptor(n,e))}),t});return r().createElement(i.ActionContextProvider,{value:{visible:n,setVisible:p}},r().createElement(m.Provider,{value:{type:f}},r().createElement(u.Dropdown,{menu:{items:v}},r().createElement(u.Button,{icon:r().createElement(l.PlusOutlined,null),type:"primary"},e("Add new")," ",r().createElement(l.DownOutlined,null))),r().createElement(i.SchemaComponent,{scope:{setType:d,useCreateFormProps:C},schema:c})))},T=function(e){var t,n=(0,i.usePlugin)("verification").verificationManager.getVerification(e);return null==n||null==(t=n.components)?void 0:t.AdminSettingsForm},k=(0,f.observer)(function(){var e=(0,f.useForm)(),t=(0,i.useCollectionRecordData)(),n=T(e.values.verificationType||t.verificationType);return n?r().createElement(n,null):null},{displayName:"VerificationSettings"}),I=function(){var e=(0,a.Au)().t,t=g((0,o.useState)([]),2),n=t[0],c=t[1],u=(0,i.useAPIClient)();return(0,i.useRequest)(function(){return u.resource("verifiers").listTypes().then(function(t){var n;return((null==t||null==(n=t.data)?void 0:n.data)||[]).map(function(t){return{key:t.name,label:f.Schema.compile(t.title||t.name,{t:e}),value:t.name}})})},{onSuccess:function(e){c(e)}}),r().createElement(y.Provider,{value:{types:n}},r().createElement(i.ExtendCollectionsProvider,{collections:[s]},r().createElement(i.SchemaComponent,{schema:p,components:{AddNew:O,Settings:k},scope:{types:n,useEditFormProps:w,useCancelActionProps:P,useCreateActionProps:S,useEditActionProps:D}})))}}}]);
@@ -0,0 +1,10 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+
10
+ "use strict";(self.webpackChunk_nocobase_plugin_verification=self.webpackChunk_nocobase_plugin_verification||[]).push([["478"],{493:function(e,t,n){n.r(t),n.d(t,{VerifierSelect:function(){return v}});var i=n(155),l=n.n(i),a=n(230),r=n(59),u=n(342),o=n(872),c=n(442),s=n(418),v=(0,a.connect)(function(e){var t=(0,o.Au)().t,n=e.scene,v=e.value,f=e.title,m=e.onChange,p=e.multiple;p=p?"multiple":void 0;var d=(0,u.useAPIClient)(),h=(0,u.useRequest)(function(){return d.resource("verifiers").listByScene({scene:n}).then(function(e){var t;return null==e||null==(t=e.data)?void 0:t.data})}).data||{},g=h.verifiers,b=void 0===g?[]:g,E=h.availableTypes,k=(0,i.useMemo)(function(){return null==b?void 0:b.map(function(e){return{label:e.title,value:e.name}})},[b]);return l().createElement(s.FormItem,{label:f||t("Verifiers"),extra:l().createElement(l().Fragment,null,t("The following types of verifiers are available:"),(void 0===E?[]:E).map(function(e){return a.Schema.compile(e.title,{t:t})}).join(", "),". ",t("Go to")," ",l().createElement(c.Link,{to:"/admin/settings/verification"},t("create verifiers")))},l().createElement(r.Select,{allowClear:!0,options:k,value:v,mode:p,onChange:m}))},(0,a.mapReadPretty)(function(){var e,t=(0,a.useField)();return(null==(e=t.value)?void 0:e.length)?l().createElement(u.EllipsisWithTooltip,{ellipsis:!0},t.value.map(function(e){return l().createElement(r.Tag,{key:e.name},e.title)})):null}))}}]);
@@ -7,4 +7,4 @@
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
9
 
10
- !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("@formily/core"),require("@formily/shared"),require("@nocobase/client"),require("react-router-dom"),require("@formily/antd-v5"),require("react"),require("@formily/react"),require("@nocobase/utils/client"),require("@ant-design/icons"),require("antd"),require("react-i18next")):"function"==typeof define&&define.amd?define("@nocobase/plugin-verification",["@formily/core","@formily/shared","@nocobase/client","react-router-dom","@formily/antd-v5","react","@formily/react","@nocobase/utils/client","@ant-design/icons","antd","react-i18next"],t):"object"==typeof exports?exports["@nocobase/plugin-verification"]=t(require("@formily/core"),require("@formily/shared"),require("@nocobase/client"),require("react-router-dom"),require("@formily/antd-v5"),require("react"),require("@formily/react"),require("@nocobase/utils/client"),require("@ant-design/icons"),require("antd"),require("react-i18next")):e["@nocobase/plugin-verification"]=t(e["@formily/core"],e["@formily/shared"],e["@nocobase/client"],e["react-router-dom"],e["@formily/antd-v5"],e.react,e["@formily/react"],e["@nocobase/utils/client"],e["@ant-design/icons"],e.antd,e["react-i18next"])}(self,function(e,t,n,r,o,i,c,a,u,s,l){return function(){var p,f,m,d,v,y,b={551:function(e,t,n){"use strict";n.d(t,{A7:function(){return o},SD:function(){return i}}),n(772);var r=n(238),o="verification";function i(){return(0,r.useTranslation)([o,"client"],{nsMode:"fallback"})}},581:function(e){e.exports=function(e,t){return"undefined"!=typeof __deoptimization_sideEffect__&&__deoptimization_sideEffect__(e,t),t}},482:function(e){"use strict";e.exports=u},632:function(e){"use strict";e.exports=o},563:function(t){"use strict";t.exports=e},505:function(e){"use strict";e.exports=c},875:function(e){"use strict";e.exports=t},772:function(e){"use strict";e.exports=n},584:function(e){"use strict";e.exports=a},721:function(e){"use strict";e.exports=s},156:function(e){"use strict";e.exports=i},238:function(e){"use strict";e.exports=l},128:function(e){"use strict";e.exports=r}},h={};function g(e){var t=h[e];if(void 0!==t)return t.exports;var n=h[e]={exports:{}};return b[e](n,n.exports,g),n.exports}g.m=b,g.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return g.d(t,{a:t}),t},g.d=function(e,t){for(var n in t)g.o(t,n)&&!g.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},g.f={},g.e=function(e){return Promise.all(Object.keys(g.f).reduce(function(t,n){return g.f[n](e,t),t},[]))},g.u=function(e){return""+({697:"20e6e5fa4c397f95",716:"0c72f307d843dc6a"})[e]+".js"},g.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),g.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},p={},f="@nocobase/plugin-verification:",g.l=function(e,t,n,r){if(p[e])return void p[e].push(t);if(void 0!==n)for(var o,i,c=document.getElementsByTagName("script"),a=0;a<c.length;a++){var u=c[a];if(u.getAttribute("src")==e||u.getAttribute("data-webpack")==f+n){o=u;break}}o||(i=!0,(o=document.createElement("script")).charset="utf-8",o.timeout=120,g.nc&&o.setAttribute("nonce",g.nc),o.setAttribute("data-webpack",f+n),o.src=e),p[e]=[t];var s=function(t,n){o.onerror=o.onload=null,clearTimeout(l);var r=p[e];if(delete p[e],o.parentNode&&o.parentNode.removeChild(o),r&&r.forEach(function(e){return e(n)}),t)return t(n)},l=setTimeout(s.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=s.bind(null,o.onerror),o.onload=s.bind(null,o.onload),i&&document.head.appendChild(o)},g.r=function(e){"undefined"!=typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},(m=window.__webpack_public_path__||"/").endsWith("/")||(m+="/"),g.p=m+"static/plugins/@nocobase/plugin-verification/dist/client/",d={909:0},g.f.j=function(e,t){var n=g.o(d,e)?d[e]:void 0;if(0!==n)if(n)t.push(n[2]);else{var r=new Promise(function(t,r){n=d[e]=[t,r]});t.push(n[2]=r);var o=g.p+g.u(e),i=Error();g.l(o,function(t){if(g.o(d,e)&&(0!==(n=d[e])&&(d[e]=void 0),n)){var r=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;i.message="Loading chunk "+e+" failed.\n("+r+": "+o+")",i.name="ChunkLoadError",i.type=r,i.request=o,n[1](i)}},"chunk-"+e,e)}},v=function(e,t){var n,r,o=t[0],i=t[1],c=t[2],a=0;if(o.some(function(e){return 0!==d[e]})){for(n in i)g.o(i,n)&&(g.m[n]=i[n]);c&&c(g)}for(e&&e(t);a<o.length;a++)r=o[a],g.o(d,r)&&d[r]&&d[r][0](),d[r]=0},(y=self.webpackChunk_nocobase_plugin_verification=self.webpackChunk_nocobase_plugin_verification||[]).forEach(v.bind(null,0)),y.push=v.bind(null,y.push.bind(y));var x={};return!function(){"use strict";g.r(x),g.d(x,{default:function(){return et},UserVerifiersContext:function(){return q},PluginVerificationClient:function(){return ee},SMS_OTP_VERIFICATION_TYPE:function(){return n}});var e=g(772),t=g(551),n="sms-otp",r=g(584),o=function(){var e;function t(){var e,n;if(!(this instanceof t))throw TypeError("Cannot call a class as a function");e="verifications",n=new r.Registry,e in this?Object.defineProperty(this,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):this[e]=n}return e=[{key:"registerVerificationType",value:function(e,t){this.verifications.register(e,t)}},{key:"getVerification",value:function(e){return this.verifications.get(e)}}],function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}(t.prototype,e),t}(),i=g(156),c=g.n(i),a={type:"object",properties:{accessKeyId:{title:'{{t("Access Key ID", { ns: "'.concat(t.A7,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope",required:!0},accessKeySecret:{title:'{{t("Access Key Secret", { ns: "'.concat(t.A7,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope","x-component-props":{password:!0},required:!0},endpoint:{title:'{{t("Endpoint", { ns: "'.concat(t.A7,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope",required:!0},sign:{title:'{{t("Sign", { ns: "'.concat(t.A7,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope",required:!0},template:{title:'{{t("Template code", { ns: "'.concat(t.A7,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope",required:!0}}},u={type:"object",properties:{secretId:{title:'{{t("Secret Id", { ns: "'.concat(t.A7,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope",required:!0},secretKey:{title:'{{t("Secret Key", { ns: "'.concat(t.A7,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope","x-component-props":{password:!0},required:!0},region:{title:'{{t("Region", { ns: "'.concat(t.A7,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope",required:!0},endpoint:{title:'{{t("Endpoint", { ns: "'.concat(t.A7,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope",default:"sms.tencentcloudapi.com"},SignName:{title:'{{t("Sign name", { ns: "'.concat(t.A7,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope"},SmsSdkAppId:{title:'{{t("Sms sdk app id", { ns: "'.concat(t.A7,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope",required:!0},TemplateId:{title:'{{t("Template Id", { ns: "'.concat(t.A7,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope",required:!0}}},s=g(505),l=g(721),p=g(238);function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function m(e,t,n,r,o,i,c){try{var a=e[i](c),u=a.value}catch(e){n(e);return}a.done?t(u):Promise.resolve(u).then(r,o)}function d(){var e,t,n=(e=["\n display: flex;\n gap: 0.5em;\n "],t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return d=function(){return n},n}var v=(0,e.withDynamicSchemaProps)(function(t){var n,r=t.actionType,o=t.verifier,a=t.value,u=t.onChange,v=t.isLogged,y=(0,p.useTranslation)().t,b=(0,e.useAPIClient)(),h=(0,s.useForm)(),g=(n=(0,i.useState)(0),function(e){if(Array.isArray(e))return e}(n)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],c=!0,a=!1;try{for(o=o.call(e);!(c=(n=o.next()).done)&&(i.push(n.value),i.length!==t);c=!0);}catch(e){a=!0,r=e}finally{try{c||null==o.return||o.return()}finally{if(a)throw r}}return i}}(n,2)||function(e,t){if(e){if("string"==typeof e)return f(e,2);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return f(e,t)}}(n,2)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()),x=g[0],S=g[1],P=(0,i.useRef)(null);function w(){var e;return e=function(){var e,t;return function(e,t){var n,r,o,i,c={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){var u=[i,a];if(n)throw TypeError("Generator is already executing.");for(;c;)try{if(n=1,r&&(o=2&u[0]?r.return:u[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,u[1])).done)return o;switch(r=0,o&&(u=[2&u[0],o.value]),u[0]){case 0:case 1:o=u;break;case 4:return c.label++,{value:u[1],done:!1};case 5:c.label++,r=u[1],u=[0];continue;case 7:u=c.ops.pop(),c.trys.pop();continue;default:if(!(o=(o=c.trys).length>0&&o[o.length-1])&&(6===u[0]||2===u[0])){c=0;continue}if(3===u[0]&&(!o||u[1]>o[0]&&u[1]<o[3])){c.label=u[1];break}if(6===u[0]&&c.label<o[1]){c.label=o[1],o=u;break}if(o&&c.label<o[2]){c.label=o[2],c.ops.push(u);break}o[2]&&c.ops.pop(),c.trys.pop();continue}u=t.call(e,c)}catch(e){u=[6,e],r=0}finally{n=o=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}}}(this,function(n){switch(n.label){case 0:if(x>0)return[2];e=v?"create":"publicCreate",n.label=1;case 1:return n.trys.push([1,3,,4]),[4,b.resource("smsOTP")[e]({values:function(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}({action:r,verifier:o},h.values)})];case 2:return t=n.sent().data.data,l.message.success(y("Operation succeeded")),a&&u(""),S(t.expiresAt?Math.ceil((Date.parse(t.expiresAt)-Date.now())/1e3):60),P.current=setInterval(function(){S(function(e){return e-1})},1e3),[3,4];case 3:return console.error(n.sent()),[3,4];case 4:return[2]}})},(w=function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function c(e){m(i,r,o,c,a,"next",e)}function a(e){m(i,r,o,c,a,"throw",e)}c(void 0)})}).apply(this,arguments)}return(0,i.useEffect)(function(){x<=0&&P.current&&clearInterval(P.current)},[x]),c().createElement("fieldset",{className:(0,e.css)(d())},c().createElement(l.Input,{value:a,onChange:u}),c().createElement(l.Button,{onClick:function(){return w.apply(this,arguments)},disabled:x>0},x>0?y("Retry after {{count}} seconds",{count:x}):y("Send code")))},{displayName:"VerificationCode"}),y={type:"void",name:"sms-otp",properties:{uuid:{type:"string",required:!0,"x-component":"Input","x-decorator":"FormItem",title:'{{t("Phone")}}',"x-component-props":{style:{}},"x-read-pretty":"{{ phone ? true : false }}",default:"{{ phone }}"},code:{type:"string",required:!0,title:'{{t("Verification code")}}',"x-component":"VerificationCode","x-use-component-props":"useVerificationCodeProps","x-decorator":"FormItem"}}},b=function(t){var n,r=(0,e.usePlugin)("verification").smsOTPProviderManager.getProvider(t);return null==r||null==(n=r.components)?void 0:n.AdminSettingsForm},h=(0,s.observer)(function(){var e,t=b(null==(e=(0,s.useForm)().values.options)?void 0:e.provider);return t?c().createElement(t,null):null},{displayName:"SMSOTPVerificationSettings"}),S={type:"void",name:"sms-otp",properties:{uuid:{type:"string",required:!0,"x-component":"Input","x-decorator":"FormItem",title:'{{t("Phone")}}',"x-component-props":{style:{}}},code:{type:"string",required:!0,title:'{{t("Verification code")}}',"x-component":"VerificationCode","x-component-props":{targetFieldName:"phone",actionType:"{{ actionType }}",verifier:"{{ verifier }}"},"x-decorator":"FormItem"}}},P={components:{VerificationForm:function(t){var n=t.verifier,r=t.actionType,o=t.boundInfo,i=t.isLogged;return c().createElement(e.SchemaComponent,{schema:y,scope:{phone:null==o?void 0:o.publicInfo,useVerificationCodeProps:function(){return{actionType:r,verifier:n,isLogged:i}}},components:{VerificationCode:v}})},AdminSettingsForm:function(){return c().createElement(e.SchemaComponent,{components:{Settings:h},schema:{type:"void",properties:{provider:{title:(0,r.tval)("Provider",{ns:t.A7}),type:"string",required:!0,"x-decorator":"FormItem","x-component":"RemoteSelect","x-component-props":{manual:!1,fieldNames:{label:"title",value:"name"},service:{resource:"smsOTPProviders"}}},settings:{type:"object","x-component":"Settings"}}}})},BindForm:function(t){var n=t.verifier,r=t.actionType;return c().createElement(e.SchemaComponent,{scope:{verifier:n,actionType:r},schema:S,components:{VerificationCode:v}})}}},w={components:{AdminSettingsForm:function(){return c().createElement(e.SchemaComponent,{schema:a})}}},A={components:{AdminSettingsForm:function(){return c().createElement(e.SchemaComponent,{schema:u})}}},C=function(){var e;function t(){var e,n;if(!(this instanceof t))throw TypeError("Cannot call a class as a function");e="providers",n=new r.Registry,e in this?Object.defineProperty(this,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):this[e]=n}return e=[{key:"registerProvider",value:function(e,t){this.providers.register(e,t)}},{key:"getProvider",value:function(e){return this.providers.get(e)}}],function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}(t.prototype,e),t}(),T=g(875),E=g(563);function I(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function O(e,t,n,r,o,i,c){try{var a=e[i](c),u=a.value}catch(e){n(e);return}a.done?t(u):Promise.resolve(u).then(r,o)}function j(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function c(e){O(i,r,o,c,a,"next",e)}function a(e){O(i,r,o,c,a,"throw",e)}c(void 0)})}}function k(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function V(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){k(e,t,n[t])})}return e}function F(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"undefined"!=typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],c=!0,a=!1;try{for(o=o.call(e);!(c=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);c=!0);}catch(e){a=!0,r=e}finally{try{c||null==o.return||o.return()}finally{if(a)throw r}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return I(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return I(e,t)}}(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _(e,t){var n,r,o,i,c={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){var u=[i,a];if(n)throw TypeError("Generator is already executing.");for(;c;)try{if(n=1,r&&(o=2&u[0]?r.return:u[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,u[1])).done)return o;switch(r=0,o&&(u=[2&u[0],o.value]),u[0]){case 0:case 1:o=u;break;case 4:return c.label++,{value:u[1],done:!1};case 5:c.label++,r=u[1],u=[0];continue;case 7:u=c.ops.pop(),c.trys.pop();continue;default:if(!(o=(o=c.trys).length>0&&o[o.length-1])&&(6===u[0]||2===u[0])){c=0;continue}if(3===u[0]&&(!o||u[1]>o[0]&&u[1]<o[3])){c.label=u[1];break}if(6===u[0]&&c.label<o[1]){c.label=o[1],o=u;break}if(o&&c.label<o[2]){c.label=o[2],c.ops.push(u);break}o[2]&&c.ops.pop(),c.trys.pop();continue}u=t.call(e,c)}catch(e){u=[6,e],r=0}finally{n=o=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}}}var q=(0,i.createContext)(null),M=function(n){var r=(0,s.useForm)(),o=(0,e.useAPIClient)(),c=(0,t.SD)().t,a=(0,i.useContext)(q).refresh,u=(0,e.useActionContext)().setVisible;return{type:"primary",htmlType:"submit",onClick:j(function(){return _(this,function(e){switch(e.label){case 0:return[4,r.submit()];case 1:return e.sent(),[4,o.resource("verifiers").bind({values:V({verifier:n},r.values)})];case 2:return e.sent(),l.message.success(c("Bound successfully")),u(!1),a(),[2]}})})}},D=function(){var n=(0,s.useForm)(),r=(0,e.useAPIClient)(),o=(0,t.SD)().t,c=(0,i.useContext)(q).refresh,a=(0,e.useActionContext)().setVisible;return{type:"primary",htmlType:"submit",onClick:j(function(){return _(this,function(e){switch(e.label){case 0:return[4,n.submit()];case 1:return e.sent(),[4,r.resource("verifiers").unbind({values:V({},n.values)})];case 2:return e.sent(),l.message.success(o("Unbound successfully")),a(!1),c(),[2]}})})}},G=function(){var t=(0,e.useActionContext)().setVisible;return{onClick:function(){t(!1)}}},B=function(n){var r,o=n.verifier,i=(0,t.SD)().t,a=(0,e.usePlugin)("verification");if(!o)return null;var u=a.verificationManager.getVerification(o.verificationType),s=null==u||null==(r=u.components)?void 0:r.BindForm;return c().createElement(e.SchemaComponent,{components:{C:s},scope:{useBindActionProps:function(){return M(o.name)},useCancelActionProps:G},schema:{type:"void",properties:k({},(0,T.uid)(),{type:"object","x-component":"Action.Modal","x-component-props":{width:520},title:i(o.title),"x-decorator":"FormV2",properties:{form:{type:"void","x-component":"C","x-component-props":{verifier:o.name,actionType:"verifiers:bind",isLogged:!0}},footer:{type:"void","x-component":"Action.Modal.Footer",properties:{close:{title:i("Cancel"),"x-component":"Action","x-component-props":{type:"default"},"x-use-component-props":"useCancelActionProps"},submit:{title:i("Bind"),"x-component":"Action","x-use-component-props":"useBindActionProps"}}}}})}})},L=function(n){var r=n.verifiers,o=n.unbindVerifier,a=(0,t.SD)().t,u=(0,e.usePlugin)("verification"),p=r.map(function(t){var n,r=u.verificationManager.getVerification(t.verificationType),l=null==r||null==(n=r.components)?void 0:n.VerificationForm;if(l){var p=s.Schema.compile(t.verificationTypeTitle||t.verificationType,{t:a});return V({component:c().createElement(e.SchemaComponent,{components:{C:l},scope:{useCancelActionProps:G,useUnbindActionProps:D,useFormProps:function(){var e;return e=t.name,{form:(0,i.useMemo)(function(){return(0,E.createForm)({initialValues:{verifier:e,unbindVerifier:o}})},[e,o])}}},schema:{type:"void",properties:{form:{type:"object","x-component":"FormV2","x-use-component-props":"useFormProps",properties:{bind:{type:"void","x-component":"C","x-component-props":{actionType:"verifiers:unbind",verifier:t.name,boundInfo:t.boundInfo,isLogged:!0}},footer:{type:"void","x-component":"Action.Modal.FootBar",properties:{close:{title:a("Cancel"),"x-component":"Action","x-component-props":{type:"default"},"x-use-component-props":"useCancelActionProps"},submit:{title:a("Unbind"),"x-component":"Action","x-use-component-props":"useUnbindActionProps"}}}}}}}}),tabTitle:t.title||p},t)}}).filter(function(e){return e});return c().createElement(c().Fragment,null,p.length?c().createElement(l.Tabs,{destroyInactiveTabPane:!0,items:p.map(function(e){return{label:e.tabTitle,key:e.name,children:e.component}})}):null)},R=function(n){var r=n.verifier,o=(0,t.SD)().t,i=(0,e.useAPIClient)(),a=(0,e.useRequest)(function(){return i.resource("verifiers").listForVerify({scene:"unbind-verifier"}).then(function(e){var t;return null==e||null==(t=e.data)?void 0:t.data})},{refreshDeps:[r]}),u=a.data,s=a.loading;return!r||s?null:c().createElement(e.SchemaComponent,{components:{UnbindForm:L},schema:{type:"void",properties:k({},(0,T.uid)(),{type:"object","x-component":"Action.Modal","x-component-props":{width:520},title:o("Unbind verifier"),properties:k({},(0,T.uid)(),{type:"void","x-component":"UnbindForm","x-component-props":{verifiers:u,unbindVerifier:r.name}})})}})},U=function(){var n=(0,t.SD)().t,r=(0,e.useAPIClient)(),o=(0,e.useRequest)(function(){return r.resource("verifiers").listByUser().then(function(e){var t;return null==e||null==(t=e.data)?void 0:t.data})}),a=o.data,u=o.refresh,p=F((0,i.useState)(!1),2),f=p[0],m=p[1],d=F((0,i.useState)(!1),2),v=d[0],y=d[1],b=F((0,i.useState)(null),2),h=b[0],g=b[1],x=function(e){m(!0),g(e)},S=function(e){y(!0),g(e)};return c().createElement(q.Provider,{value:{refresh:u}},c().createElement(l.List,{bordered:!0,dataSource:a,renderItem:function(e){var t,r,o;return c().createElement(l.List.Item,{actions:(null==(t=e.boundInfo)?void 0:t.bound)?[c().createElement("a",{key:"unbind",onClick:function(){return S(e)}},n("Unbind"))]:[c().createElement("a",{key:"bind",onClick:function(){return x(e)}},n("Bind"))]},c().createElement(l.List.Item.Meta,{title:c().createElement(c().Fragment,null,s.Schema.compile(e.title,{t:n}),(null==(r=e.boundInfo)?void 0:r.bound)?c().createElement(l.Tag,{color:"success",style:{marginLeft:"10px"}},n("Configured")):c().createElement(l.Tag,{color:"warning",style:{marginLeft:"10px"}},n("Not configured"))),description:s.Schema.compile(e.description,{t:n})}),c().createElement("div",{style:{marginLeft:"10px"}},null==(o=e.boundInfo)?void 0:o.publicInfo))}}),c().createElement(e.ActionContextProvider,{value:{visible:f,setVisible:m}},f?c().createElement(B,{verifier:h}):null),c().createElement(e.ActionContextProvider,{value:{visible:v,setVisible:y}},v?c().createElement(R,{verifier:h}):null))},W=function(){var n=(0,i.useContext)(e.DropdownVisibleContext),r=F((0,i.useState)(!1),2),o=r[0],a=r[1],u=(0,t.SD)().t,s=(0,e.useZIndexContext)()+10,l=(0,i.useCallback)(function(e){var t;e.stopPropagation(),null==n||null==(t=n.setVisible)||t.call(n,!1),a(function(e){return!e||e})},[n]),p=(0,i.useMemo)(function(){return c().createElement(e.SchemaComponent,{components:{Verifiers:U},schema:{type:"object",properties:k({},(0,T.uid)(),{"x-component":"Action.Drawer","x-component-props":{zIndex:s},type:"void",title:'{{t("Verification")}}',properties:{form:{type:"void","x-component":"Verifiers"}}})}})},[s]);return c().createElement(e.zIndexContext.Provider,{value:s},c().createElement(e.SchemaSettingsItem,{eventKey:"Verification",title:"Verification"},c().createElement("div",{onClick:l},u("Verification"))),c().createElement(e.ActionContextProvider,{value:{visible:o,setVisible:a}},o&&c().createElement("div",{onClick:function(e){return e.stopPropagation()}},p)))},N=g(581);function z(e,t,n,r,o,i,c){try{var a=e[i](c),u=a.value}catch(e){n(e);return}a.done?t(u):Promise.resolve(u).then(r,o)}function K(e,t,n){return(K=J()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&Z(o,n.prototype),o}).apply(null,arguments)}function $(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function Y(e){return(Y=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function Z(e,t){return(Z=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function H(e){var t="function"==typeof Map?new Map:void 0;return(H=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return K(e,arguments,Y(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),Z(n,e)})(e)}function J(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(J=function(){return!!e})()}var Q=(0,e.lazy)(function(){return N("imported_-805vdi_component",g.e("697").then(g.bind(g,974)))},"Verifiers").Verifiers,X=(0,e.lazy)(function(){return N("imported_-1gce66s_component",g.e("716").then(g.bind(g,142)))},"VerifierSelect").VerifierSelect,ee=function(e){var r;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function i(){var e,t,n;if(!(this instanceof i))throw TypeError("Cannot call a class as a function");return t=i,n=arguments,t=Y(t),$(e=function(e,t){var n;if(t&&("object"==((n=t)&&"undefined"!=typeof Symbol&&n.constructor===Symbol?"symbol":typeof n)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,J()?Reflect.construct(t,n||[],Y(this).constructor):t.apply(this,n)),"verificationManager",new o),$(e,"smsOTPProviderManager",new C),e}return i.prototype=Object.create(e&&e.prototype,{constructor:{value:i,writable:!0,configurable:!0}}),e&&Z(i,e),r=[{key:"load",value:function(){var e,r=this;return(e=function(){return function(e,t){var n,r,o,i,c={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]};return i={next:a(0),throw:a(1),return:a(2)},"function"==typeof Symbol&&(i[Symbol.iterator]=function(){return this}),i;function a(i){return function(a){var u=[i,a];if(n)throw TypeError("Generator is already executing.");for(;c;)try{if(n=1,r&&(o=2&u[0]?r.return:u[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,u[1])).done)return o;switch(r=0,o&&(u=[2&u[0],o.value]),u[0]){case 0:case 1:o=u;break;case 4:return c.label++,{value:u[1],done:!1};case 5:c.label++,r=u[1],u=[0];continue;case 7:u=c.ops.pop(),c.trys.pop();continue;default:if(!(o=(o=c.trys).length>0&&o[o.length-1])&&(6===u[0]||2===u[0])){c=0;continue}if(3===u[0]&&(!o||u[1]>o[0]&&u[1]<o[3])){c.label=u[1];break}if(6===u[0]&&c.label<o[1]){c.label=o[1],o=u;break}if(o&&c.label<o[2]){c.label=o[2],c.ops.push(u);break}o[2]&&c.ops.pop(),c.trys.pop();continue}u=t.call(e,c)}catch(e){u=[6,e],r=0}finally{n=o=0}if(5&u[0])throw u[1];return{value:u[0]?u[1]:void 0,done:!0}}}}(this,function(e){return r.app.pluginSettingsManager.add(t.A7,{icon:"CheckCircleOutlined",title:'{{t("Verification", { ns: "'.concat(t.A7,'" })}}'),Component:Q,aclSnippet:"pm.verification.verifiers"}),r.app.addComponents({VerifierSelect:X}),r.app.addUserCenterSettingsItem({name:"verification",Component:W,sort:150}),r.verificationManager.registerVerificationType(n,P),r.smsOTPProviderManager.registerProvider("sms-aliyun",w),r.smsOTPProviderManager.registerProvider("sms-tencent",A),[2]})},function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function c(e){z(i,r,o,c,a,"next",e)}function a(e){z(i,r,o,c,a,"throw",e)}c(void 0)})})()}}],function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}(i.prototype,r),i}(H(e.Plugin)),et=ee}(),x}()});
10
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("react-i18next"),require("react-router-dom"),require("@formily/core"),require("@formily/shared"),require("react"),require("antd"),require("@formily/antd-v5"),require("@nocobase/client"),require("@formily/react"),require("@ant-design/icons"),require("@nocobase/utils/client")):"function"==typeof define&&define.amd?define("@nocobase/plugin-verification",["react-i18next","react-router-dom","@formily/core","@formily/shared","react","antd","@formily/antd-v5","@nocobase/client","@formily/react","@ant-design/icons","@nocobase/utils/client"],t):"object"==typeof exports?exports["@nocobase/plugin-verification"]=t(require("react-i18next"),require("react-router-dom"),require("@formily/core"),require("@formily/shared"),require("react"),require("antd"),require("@formily/antd-v5"),require("@nocobase/client"),require("@formily/react"),require("@ant-design/icons"),require("@nocobase/utils/client")):e["@nocobase/plugin-verification"]=t(e["react-i18next"],e["react-router-dom"],e["@formily/core"],e["@formily/shared"],e.react,e.antd,e["@formily/antd-v5"],e["@nocobase/client"],e["@formily/react"],e["@ant-design/icons"],e["@nocobase/utils/client"])}(self,function(e,t,r,n,o,i,c,a,u,l,s){return function(){"use strict";var p,f,m,d={872:function(e,t,r){r.d(t,{Au:function(){return i},CU:function(){return o}}),r(342);var n=r(953),o="verification";function i(){return(0,n.useTranslation)([o,"client"],{nsMode:"fallback"})}},375:function(e){e.exports=l},418:function(e){e.exports=c},452:function(e){e.exports=r},230:function(e){e.exports=u},166:function(e){e.exports=n},342:function(e){e.exports=a},768:function(e){e.exports=s},59:function(e){e.exports=i},155:function(e){e.exports=o},953:function(t){t.exports=e},442:function(e){e.exports=t}},v={};function b(e){var t=v[e];if(void 0!==t)return t.exports;var r=v[e]={exports:{}};return d[e](r,r.exports,b),r.exports}b.m=d,b.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return b.d(t,{a:t}),t},b.d=function(e,t){for(var r in t)b.o(t,r)&&!b.o(e,r)&&Object.defineProperty(e,r,{enumerable:!0,get:t[r]})},b.f={},b.e=function(e){return Promise.all(Object.keys(b.f).reduce(function(t,r){return b.f[r](e,t),t},[]))},b.u=function(e){return""+e+"."+({152:"480ad14fee48be71",478:"bb62159e1d524faa"})[e]+".js"},b.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),b.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},y={},b.l=function(e,t,r,n){if(y[e])return void y[e].push(t);if(void 0!==r)for(var o,i,c=document.getElementsByTagName("script"),a=0;a<c.length;a++){var u=c[a];if(u.getAttribute("src")==e||u.getAttribute("data-rspack")=="@nocobase/plugin-verification:"+r){o=u;break}}o||(i=!0,(o=document.createElement("script")).timeout=120,b.nc&&o.setAttribute("nonce",b.nc),o.setAttribute("data-rspack","@nocobase/plugin-verification:"+r),o.src=e),y[e]=[t];var l=function(t,r){o.onerror=o.onload=null,clearTimeout(s);var n=y[e];if(delete y[e],o.parentNode&&o.parentNode.removeChild(o),n&&n.forEach(function(e){return e(r)}),t)return t(r)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=l.bind(null,o.onerror),o.onload=l.bind(null,o.onload),i&&document.head.appendChild(o)},b.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},b.g.importScripts&&(h=b.g.location+"");var y,h,g=b.g.document;if(!h&&g&&(g.currentScript&&"SCRIPT"===g.currentScript.tagName.toUpperCase()&&(h=g.currentScript.src),!h)){var x=g.getElementsByTagName("script");if(x.length)for(var S=x.length-1;S>-1&&(!h||!/^http(s?):/.test(h));)h=x[S--].src}if(!h)throw Error("Automatic publicPath is not supported in this browser");b.p=h.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),p={889:0},b.f.j=function(e,t){var r=b.o(p,e)?p[e]:void 0;if(0!==r)if(r)t.push(r[2]);else{var n=new Promise(function(t,n){r=p[e]=[t,n]});t.push(r[2]=n);var o=b.p+b.u(e),i=Error();b.l(o,function(t){if(b.o(p,e)&&(0!==(r=p[e])&&(p[e]=void 0),r)){var n=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;i.message="Loading chunk "+e+" failed.\n("+n+": "+o+")",i.name="ChunkLoadError",i.type=n,i.request=o,r[1](i)}},"chunk-"+e,e)}},f=function(e,t){var r,n,o=t[0],i=t[1],c=t[2],a=0;if(o.some(function(e){return 0!==p[e]})){for(r in i)b.o(i,r)&&(b.m[r]=i[r]);c&&c(b)}for(e&&e(t);a<o.length;a++)n=o[a],b.o(p,n)&&p[n]&&p[n][0](),p[n]=0},(m=self.webpackChunk_nocobase_plugin_verification=self.webpackChunk_nocobase_plugin_verification||[]).forEach(f.bind(null,0)),m.push=f.bind(null,m.push.bind(m));var C={};return!function(){var e="",t="u">typeof document?document.currentScript:null;if(t&&t.src&&(e=t.src.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/")),!e){var r=window.__webpack_public_path__||"";r&&("/"!==r.charAt(r.length-1)&&(r+="/"),e=r+"static/plugins/@nocobase/plugin-verification/dist/client/")}if(!e){var n=window.__nocobase_modern_client_prefix__||"v",o="/"+(n=String(n).replace(/^\/+|\/+$/g,"")||"v")+"/";if(!(e=window.__nocobase_public_path__||"")&&window.location&&window.location.pathname){var i=window.location.pathname||"/",c=i.indexOf(o);e=c>=0?i.slice(0,c+1):"/"}e&&(e=e.replace(RegExp("/"+n+"/?$"),"/")),e||(e="/"),"/"!==e.charAt(e.length-1)&&(e+="/"),e+="static/plugins/@nocobase/plugin-verification/dist/client/"}b.p=e}(),!function(){b.r(C),b.d(C,{default:function(){return ee},SMS_OTP_VERIFICATION_TYPE:function(){return r},UserVerifiersContext:function(){return q},PluginVerificationClient:function(){return X}});var e=b(342),t=b(872),r="sms-otp",n=b(768),o=function(){var e;function t(){var e,r;if(!(this instanceof t))throw TypeError("Cannot call a class as a function");e="verifications",r=new n.Registry,e in this?Object.defineProperty(this,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):this[e]=r}return e=[{key:"registerVerificationType",value:function(e,t){this.verifications.register(e,t)}},{key:"getVerification",value:function(e){return this.verifications.get(e)}}],function(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}(t.prototype,e),t}(),i=b(155),c=b.n(i),a={type:"object",properties:{accessKeyId:{title:'{{t("Access Key ID", { ns: "'.concat(t.CU,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope",required:!0},accessKeySecret:{title:'{{t("Access Key Secret", { ns: "'.concat(t.CU,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope","x-component-props":{password:!0},required:!0},endpoint:{title:'{{t("Endpoint", { ns: "'.concat(t.CU,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope",required:!0},sign:{title:'{{t("Sign", { ns: "'.concat(t.CU,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope",required:!0},template:{title:'{{t("Template code", { ns: "'.concat(t.CU,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope",required:!0}}},u={type:"object",properties:{secretId:{title:'{{t("Secret Id", { ns: "'.concat(t.CU,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope",required:!0},secretKey:{title:'{{t("Secret Key", { ns: "'.concat(t.CU,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope","x-component-props":{password:!0},required:!0},region:{title:'{{t("Region", { ns: "'.concat(t.CU,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope",required:!0},endpoint:{title:'{{t("Endpoint", { ns: "'.concat(t.CU,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope",default:"sms.tencentcloudapi.com"},SignName:{title:'{{t("Sign name", { ns: "'.concat(t.CU,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope"},SmsSdkAppId:{title:'{{t("Sms sdk app id", { ns: "'.concat(t.CU,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope",required:!0},TemplateId:{title:'{{t("Template Id", { ns: "'.concat(t.CU,'" })}}'),type:"string","x-decorator":"FormItem","x-component":"TextAreaWithGlobalScope",required:!0}}},l=b(230),s=b(59),p=b(953);function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function m(e,t,r,n,o,i,c){try{var a=e[i](c),u=a.value}catch(e){r(e);return}a.done?t(u):Promise.resolve(u).then(n,o)}function d(){var e,t,r=(e=["\n display: flex;\n gap: 0.5em;\n "],t||(t=e.slice(0)),Object.freeze(Object.defineProperties(e,{raw:{value:Object.freeze(t)}})));return d=function(){return r},r}var v=(0,e.withDynamicSchemaProps)(function(t){var r,n=t.actionType,o=t.verifier,a=t.value,u=t.onChange,v=t.isLogged,b=(0,p.useTranslation)().t,y=(0,e.useAPIClient)(),h=(0,l.useForm)(),g=function(e){if(Array.isArray(e))return e}(r=(0,i.useState)(0))||function(e){var t,r,n=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=n){var o=[],i=!0,c=!1;try{for(n=n.call(e);!(i=(t=n.next()).done)&&(o.push(t.value),2!==o.length);i=!0);}catch(e){c=!0,r=e}finally{try{i||null==n.return||n.return()}finally{if(c)throw r}}return o}}(r)||function(e){if(e){if("string"==typeof e)return f(e,2);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return f(e,2)}}(r)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),x=g[0],S=g[1],C=(0,i.useRef)(null);return(0,i.useEffect)(function(){x<=0&&C.current&&clearInterval(C.current)},[x]),c().createElement("fieldset",{className:(0,e.css)(d())},c().createElement(s.Input,{value:a,onChange:u}),c().createElement(s.Button,{onClick:function(){var e;return(e=function(){var e,t;return function(e,t){var r,n,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},c=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),a=Object.defineProperty;return a(c,"next",{value:u(0)}),a(c,"throw",{value:u(1)}),a(c,"return",{value:u(2)}),"function"==typeof Symbol&&a(c,Symbol.iterator,{value:function(){return this}}),c;function u(a){return function(u){var l=[a,u];if(r)throw TypeError("Generator is already executing.");for(;c&&(c=0,l[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,n=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){i.label=l[1];break}if(6===l[0]&&i.label<o[1]){i.label=o[1],o=l;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(l);break}o[2]&&i.ops.pop(),i.trys.pop();continue}l=t.call(e,i)}catch(e){l=[6,e],n=0}finally{r=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(r){switch(r.label){case 0:if(x>0)return[2];e=v?"create":"publicCreate",r.label=1;case 1:return r.trys.push([1,3,,4]),[4,y.resource("smsOTP")[e]({values:function(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){var n;n=r[t],t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n})}return e}({action:n,verifier:o},h.values)})];case 2:return t=r.sent().data.data,s.message.success(b("Operation succeeded")),a&&u(""),S(t.expiresAt?Math.ceil((Date.parse(t.expiresAt)-Date.now())/1e3):60),C.current=setInterval(function(){S(function(e){return e-1})},1e3),[3,4];case 3:return console.error(r.sent()),[3,4];case 4:return[2]}})},function(){var t=this,r=arguments;return new Promise(function(n,o){var i=e.apply(t,r);function c(e){m(i,n,o,c,a,"next",e)}function a(e){m(i,n,o,c,a,"throw",e)}c(void 0)})})()},disabled:x>0},x>0?b("Retry after {{count}} seconds",{count:x}):b("Send code")))},{displayName:"VerificationCode"}),y={type:"void",name:"sms-otp",properties:{uuid:{type:"string",required:!0,"x-component":"Input","x-decorator":"FormItem",title:'{{t("Phone")}}',"x-component-props":{style:{}},"x-read-pretty":"{{ phone ? true : false }}",default:"{{ phone }}"},code:{type:"string",required:!0,title:'{{t("Verification code")}}',"x-component":"VerificationCode","x-use-component-props":"useVerificationCodeProps","x-decorator":"FormItem"}}},h=function(t){var r,n=(0,e.usePlugin)("verification").smsOTPProviderManager.getProvider(t);return null==n||null==(r=n.components)?void 0:r.AdminSettingsForm},g=(0,l.observer)(function(){var e,t=h(null==(e=(0,l.useForm)().values.options)?void 0:e.provider);return t?c().createElement(t,null):null},{displayName:"SMSOTPVerificationSettings"}),x={type:"void",name:"sms-otp",properties:{uuid:{type:"string",required:!0,"x-component":"Input","x-decorator":"FormItem",title:'{{t("Phone")}}',"x-component-props":{style:{}}},code:{type:"string",required:!0,title:'{{t("Verification code")}}',"x-component":"VerificationCode","x-component-props":{targetFieldName:"phone",actionType:"{{ actionType }}",verifier:"{{ verifier }}"},"x-decorator":"FormItem"}}},S={components:{VerificationForm:function(t){var r=t.verifier,n=t.actionType,o=t.boundInfo,i=t.isLogged;return c().createElement(e.SchemaComponent,{schema:y,scope:{phone:null==o?void 0:o.publicInfo,useVerificationCodeProps:function(){return{actionType:n,verifier:r,isLogged:i}}},components:{VerificationCode:v}})},AdminSettingsForm:function(){return c().createElement(e.SchemaComponent,{components:{Settings:g},schema:{type:"void",properties:{provider:{title:(0,n.tval)("Provider",{ns:t.CU}),type:"string",required:!0,"x-decorator":"FormItem","x-component":"RemoteSelect","x-component-props":{manual:!1,fieldNames:{label:"title",value:"name"},service:{resource:"smsOTPProviders"}}},settings:{type:"object","x-component":"Settings"}}}})},BindForm:function(t){var r=t.verifier,n=t.actionType;return c().createElement(e.SchemaComponent,{scope:{verifier:r,actionType:n},schema:x,components:{VerificationCode:v}})}}},w={components:{AdminSettingsForm:function(){return c().createElement(e.SchemaComponent,{schema:a})}}},P={components:{AdminSettingsForm:function(){return c().createElement(e.SchemaComponent,{schema:u})}}},A=function(){var e;function t(){var e,r;if(!(this instanceof t))throw TypeError("Cannot call a class as a function");e="providers",r=new n.Registry,e in this?Object.defineProperty(this,e,{value:r,enumerable:!0,configurable:!0,writable:!0}):this[e]=r}return e=[{key:"registerProvider",value:function(e,t){this.providers.register(e,t)}},{key:"getProvider",value:function(e){return this.providers.get(e)}}],function(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}(t.prototype,e),t}(),T=b(166),O=b(452);function I(e,t){(null==t||t>e.length)&&(t=e.length);for(var r=0,n=Array(t);r<t;r++)n[r]=e[r];return n}function E(e,t,r,n,o,i,c){try{var a=e[i](c),u=a.value}catch(e){r(e);return}a.done?t(u):Promise.resolve(u).then(n,o)}function j(e){return function(){var t=this,r=arguments;return new Promise(function(n,o){var i=e.apply(t,r);function c(e){E(i,n,o,c,a,"next",e)}function a(e){E(i,n,o,c,a,"throw",e)}c(void 0)})}}function k(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function V(e){for(var t=1;t<arguments.length;t++){var r=null!=arguments[t]?arguments[t]:{},n=Object.keys(r);"function"==typeof Object.getOwnPropertySymbols&&(n=n.concat(Object.getOwnPropertySymbols(r).filter(function(e){return Object.getOwnPropertyDescriptor(r,e).enumerable}))),n.forEach(function(t){k(e,t,r[t])})}return e}function F(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var r,n,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],c=!0,a=!1;try{for(o=o.call(e);!(c=(r=o.next()).done)&&(i.push(r.value),!t||i.length!==t);c=!0);}catch(e){a=!0,n=e}finally{try{c||null==o.return||o.return()}finally{if(a)throw n}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return I(e,t);var r=Object.prototype.toString.call(e).slice(8,-1);if("Object"===r&&e.constructor&&(r=e.constructor.name),"Map"===r||"Set"===r)return Array.from(r);if("Arguments"===r||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(r))return I(e,t)}}(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function _(e,t){var r,n,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},c=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),a=Object.defineProperty;return a(c,"next",{value:u(0)}),a(c,"throw",{value:u(1)}),a(c,"return",{value:u(2)}),"function"==typeof Symbol&&a(c,Symbol.iterator,{value:function(){return this}}),c;function u(a){return function(u){var l=[a,u];if(r)throw TypeError("Generator is already executing.");for(;c&&(c=0,l[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,n=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){i.label=l[1];break}if(6===l[0]&&i.label<o[1]){i.label=o[1],o=l;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(l);break}o[2]&&i.ops.pop(),i.trys.pop();continue}l=t.call(e,i)}catch(e){l=[6,e],n=0}finally{r=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}var q=(0,i.createContext)(null),U=function(r){var n=(0,l.useForm)(),o=(0,e.useAPIClient)(),c=(0,t.Au)().t,a=(0,i.useContext)(q).refresh,u=(0,e.useActionContext)().setVisible;return{type:"primary",htmlType:"submit",onClick:function(){return j(function(){return _(this,function(e){switch(e.label){case 0:return[4,n.submit()];case 1:return e.sent(),[4,o.resource("verifiers").bind({values:V({verifier:r},n.values)})];case 2:return e.sent(),s.message.success(c("Bound successfully")),u(!1),a(),[2]}})})()}}},M=function(){var r=(0,l.useForm)(),n=(0,e.useAPIClient)(),o=(0,t.Au)().t,c=(0,i.useContext)(q).refresh,a=(0,e.useActionContext)().setVisible;return{type:"primary",htmlType:"submit",onClick:function(){return j(function(){return _(this,function(e){switch(e.label){case 0:return[4,r.submit()];case 1:return e.sent(),[4,n.resource("verifiers").unbind({values:V({},r.values)})];case 2:return e.sent(),s.message.success(o("Unbound successfully")),a(!1),c(),[2]}})})()}}},G=function(){var t=(0,e.useActionContext)().setVisible;return{onClick:function(){t(!1)}}},R=function(r){var n,o=r.verifier,i=(0,t.Au)().t,a=(0,e.usePlugin)("verification");if(!o)return null;var u=a.verificationManager.getVerification(o.verificationType),l=null==u||null==(n=u.components)?void 0:n.BindForm;return c().createElement(e.SchemaComponent,{components:{C:l},scope:{useBindActionProps:function(){return U(o.name)},useCancelActionProps:G},schema:{type:"void",properties:k({},(0,T.uid)(),{type:"object","x-component":"Action.Modal","x-component-props":{width:520},title:i(o.title),"x-decorator":"FormV2",properties:{form:{type:"void","x-component":"C","x-component-props":{verifier:o.name,actionType:"verifiers:bind",isLogged:!0}},footer:{type:"void","x-component":"Action.Modal.Footer",properties:{close:{title:i("Cancel"),"x-component":"Action","x-component-props":{type:"default"},"x-use-component-props":"useCancelActionProps"},submit:{title:i("Bind"),"x-component":"Action","x-use-component-props":"useBindActionProps"}}}}})}})},B=function(r){var n=r.verifiers,o=r.unbindVerifier,a=(0,t.Au)().t,u=(0,e.usePlugin)("verification"),p=n.map(function(t){var r,n=u.verificationManager.getVerification(t.verificationType),s=null==n||null==(r=n.components)?void 0:r.VerificationForm;if(s){var p=l.Schema.compile(t.verificationTypeTitle||t.verificationType,{t:a});return V({component:c().createElement(e.SchemaComponent,{components:{C:s},scope:{useCancelActionProps:G,useUnbindActionProps:M,useFormProps:function(){var e;return e=t.name,{form:(0,i.useMemo)(function(){return(0,O.createForm)({initialValues:{verifier:e,unbindVerifier:o}})},[e,o])}}},schema:{type:"void",properties:{form:{type:"object","x-component":"FormV2","x-use-component-props":"useFormProps",properties:{bind:{type:"void","x-component":"C","x-component-props":{actionType:"verifiers:unbind",verifier:t.name,boundInfo:t.boundInfo,isLogged:!0}},footer:{type:"void","x-component":"Action.Modal.FootBar",properties:{close:{title:a("Cancel"),"x-component":"Action","x-component-props":{type:"default"},"x-use-component-props":"useCancelActionProps"},submit:{title:a("Unbind"),"x-component":"Action","x-use-component-props":"useUnbindActionProps"}}}}}}}}),tabTitle:t.title||p},t)}}).filter(function(e){return e});return c().createElement(c().Fragment,null,p.length?c().createElement(s.Tabs,{destroyInactiveTabPane:!0,items:p.map(function(e){return{label:e.tabTitle,key:e.name,children:e.component}})}):null)},L=function(r){var n=r.verifier,o=(0,t.Au)().t,i=(0,e.useAPIClient)(),a=(0,e.useRequest)(function(){return i.resource("verifiers").listForVerify({scene:"unbind-verifier"}).then(function(e){var t;return null==e||null==(t=e.data)?void 0:t.data})},{refreshDeps:[n]}),u=a.data,l=a.loading;return!n||l?null:c().createElement(e.SchemaComponent,{components:{UnbindForm:B},schema:{type:"void",properties:k({},(0,T.uid)(),{type:"object","x-component":"Action.Modal","x-component-props":{width:520},title:o("Unbind verifier"),properties:k({},(0,T.uid)(),{type:"void","x-component":"UnbindForm","x-component-props":{verifiers:u,unbindVerifier:n.name}})})}})},N=function(){var r=(0,t.Au)().t,n=(0,e.useAPIClient)(),o=(0,e.useRequest)(function(){return n.resource("verifiers").listByUser().then(function(e){var t;return null==e||null==(t=e.data)?void 0:t.data})}),a=o.data,u=o.refresh,p=F((0,i.useState)(!1),2),f=p[0],m=p[1],d=F((0,i.useState)(!1),2),v=d[0],b=d[1],y=F((0,i.useState)(null),2),h=y[0],g=y[1],x=function(e){m(!0),g(e)},S=function(e){b(!0),g(e)};return c().createElement(q.Provider,{value:{refresh:u}},c().createElement(s.List,{bordered:!0,dataSource:a,renderItem:function(e){var t,n,o;return c().createElement(s.List.Item,{actions:(null==(t=e.boundInfo)?void 0:t.bound)?[c().createElement("a",{key:"unbind",onClick:function(){return S(e)}},r("Unbind"))]:[c().createElement("a",{key:"bind",onClick:function(){return x(e)}},r("Bind"))]},c().createElement(s.List.Item.Meta,{title:c().createElement(c().Fragment,null,l.Schema.compile(e.title,{t:r}),(null==(n=e.boundInfo)?void 0:n.bound)?c().createElement(s.Tag,{color:"success",style:{marginLeft:"10px"}},r("Configured")):c().createElement(s.Tag,{color:"warning",style:{marginLeft:"10px"}},r("Not configured"))),description:l.Schema.compile(e.description,{t:r})}),c().createElement("div",{style:{marginLeft:"10px"}},null==(o=e.boundInfo)?void 0:o.publicInfo))}}),c().createElement(e.ActionContextProvider,{value:{visible:f,setVisible:m}},f?c().createElement(R,{verifier:h}):null),c().createElement(e.ActionContextProvider,{value:{visible:v,setVisible:b}},v?c().createElement(L,{verifier:h}):null))},W=function(){var r=(0,i.useContext)(e.DropdownVisibleContext),n=F((0,i.useState)(!1),2),o=n[0],a=n[1],u=(0,t.Au)().t,l=(0,e.useZIndexContext)()+10,s=(0,i.useCallback)(function(e){var t;e.stopPropagation(),null==r||null==(t=r.setVisible)||t.call(r,!1),a(function(e){return!e||e})},[r]),p=(0,i.useMemo)(function(){return c().createElement(e.SchemaComponent,{components:{Verifiers:N},schema:{type:"object",properties:k({},(0,T.uid)(),{"x-component":"Action.Drawer","x-component-props":{zIndex:l},type:"void",title:'{{t("Verification")}}',properties:{form:{type:"void","x-component":"Verifiers"}}})}})},[l]);return c().createElement(e.zIndexContext.Provider,{value:l},c().createElement(e.SchemaSettingsItem,{eventKey:"Verification",title:"Verification"},c().createElement("div",{onClick:s},u("Verification"))),c().createElement(e.ActionContextProvider,{value:{visible:o,setVisible:a}},o&&c().createElement("div",{onClick:function(e){return e.stopPropagation()}},p)))};function $(e,t,r,n,o,i,c){try{var a=e[i](c),u=a.value}catch(e){r(e);return}a.done?t(u):Promise.resolve(u).then(n,o)}function D(e,t,r){return(D=H()?Reflect.construct:function(e,t,r){var n=[null];n.push.apply(n,t);var o=new(Function.bind.apply(e,n));return r&&Y(o,r.prototype),o}).apply(null,arguments)}function K(e,t,r){return t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r,e}function z(e){return(z=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function Y(e,t){return(Y=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function Z(e){var t="function"==typeof Map?new Map:void 0;return(Z=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,r)}function r(){return D(e,arguments,z(this).constructor)}return r.prototype=Object.create(e.prototype,{constructor:{value:r,enumerable:!1,writable:!0,configurable:!0}}),Y(r,e)})(e)}function H(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(H=function(){return!!e})()}var J=(0,e.lazy)(function(){return b.e("152").then(b.bind(b,75))},"Verifiers").Verifiers,Q=(0,e.lazy)(function(){return b.e("478").then(b.bind(b,493))},"VerifierSelect").VerifierSelect,X=function(e){var n;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function i(){var e,t,r;if(!(this instanceof i))throw TypeError("Cannot call a class as a function");return t=i,r=arguments,t=z(t),K(e=function(e,t){var r;if(t&&("object"==((r=t)&&"u">typeof Symbol&&r.constructor===Symbol?"symbol":typeof r)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,H()?Reflect.construct(t,r||[],z(this).constructor):t.apply(this,r)),"verificationManager",new o),K(e,"smsOTPProviderManager",new A),e}return i.prototype=Object.create(e&&e.prototype,{constructor:{value:i,writable:!0,configurable:!0}}),e&&Y(i,e),n=[{key:"load",value:function(){var e;return(e=function(){return function(e,t){var r,n,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},c=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),a=Object.defineProperty;return a(c,"next",{value:u(0)}),a(c,"throw",{value:u(1)}),a(c,"return",{value:u(2)}),"function"==typeof Symbol&&a(c,Symbol.iterator,{value:function(){return this}}),c;function u(a){return function(u){var l=[a,u];if(r)throw TypeError("Generator is already executing.");for(;c&&(c=0,l[0]&&(i=0)),i;)try{if(r=1,n&&(o=2&l[0]?n.return:l[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,l[1])).done)return o;switch(n=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,n=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){i.label=l[1];break}if(6===l[0]&&i.label<o[1]){i.label=o[1],o=l;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(l);break}o[2]&&i.ops.pop(),i.trys.pop();continue}l=t.call(e,i)}catch(e){l=[6,e],n=0}finally{r=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(e){return this.app.pluginSettingsManager.add(t.CU,{icon:"CheckCircleOutlined",title:'{{t("Verification", { ns: "'.concat(t.CU,'" })}}'),Component:J,aclSnippet:"pm.verification.verifiers"}),this.app.addComponents({VerifierSelect:Q}),this.app.addUserCenterSettingsItem({name:"verification",Component:W,sort:150}),this.verificationManager.registerVerificationType(r,S),this.smsOTPProviderManager.registerProvider("sms-aliyun",w),this.smsOTPProviderManager.registerProvider("sms-tencent",P),[2]})},function(){var t=this,r=arguments;return new Promise(function(n,o){var i=e.apply(t,r);function c(e){$(i,n,o,c,a,"next",e)}function a(e){$(i,n,o,c,a,"throw",e)}c(void 0)})}).call(this)}}],function(e,t){for(var r=0;r<t.length;r++){var n=t[r];n.enumerable=n.enumerable||!1,n.configurable=!0,"value"in n&&(n.writable=!0),Object.defineProperty(e,n.key,n)}}(i.prototype,n),i}(Z(e.Plugin)),ee=X}(),C}()});
@@ -0,0 +1,10 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+
10
+ "use strict";(self.webpackChunk_nocobase_plugin_verification_client_v2=self.webpackChunk_nocobase_plugin_verification_client_v2||[]).push([["190"],{653:function(e,n,i){i.r(n),i.d(n,{VerificationForm:function(){return l}});var r=i(59),t=i(155),a=i.n(t),o=i(17),u=i(488);function l(e){var n=e.verifier,i=e.actionType,t=e.boundInfo,l=e.isLogged,c=(0,u.Au)().t,s=r.Form.useFormInstance(),m=r.Form.useWatch("uuid",s),d=!!(null==t?void 0:t.publicInfo);return a().createElement(a().Fragment,null,a().createElement(r.Form.Item,{name:"uuid",label:c("Phone"),rules:[{required:!0,message:c("Please enter a phone number")}],initialValue:null==t?void 0:t.publicInfo},a().createElement(r.Input,{disabled:d})),a().createElement(r.Form.Item,{name:"code",label:c("Verification code"),rules:[{required:!0,message:c("Please enter the verification code")}]},a().createElement(o.n,{actionType:i,verifier:n,phone:m,isLogged:l})))}n.default=l}}]);
@@ -0,0 +1,10 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+
10
+ "use strict";(self.webpackChunk_nocobase_plugin_verification_client_v2=self.webpackChunk_nocobase_plugin_verification_client_v2||[]).push([["290"],{289:function(e,t,n){n.r(t),n.d(t,{default:function(){return S},recursiveTrim:function(){return w},submitVerifierForm:function(){return E}});var r=n(375),i=n(485),o=n(694),a=n(625),u=n(59),l=n(773),c=n(155),s=n.n(c),f=n(488),m=n(373);function d(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function p(e,t,n,r,i,o,a){try{var u=e[o](a),l=u.value}catch(e){n(e);return}u.done?t(l):Promise.resolve(l).then(r,i)}function y(e){return function(){var t=this,n=arguments;return new Promise(function(r,i){var o=e.apply(t,n);function a(e){p(o,r,i,a,u,"next",e)}function u(e){p(o,r,i,a,u,"throw",e)}a(void 0)})}}function b(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}function v(e,t){return t=null!=t?t:{},Object.getOwnPropertyDescriptors?Object.defineProperties(e,Object.getOwnPropertyDescriptors(t)):(function(e){var t=Object.keys(e);if(Object.getOwnPropertySymbols){var n=Object.getOwnPropertySymbols(e);t.push.apply(t,n)}return t})(Object(t)).forEach(function(n){Object.defineProperty(e,n,Object.getOwnPropertyDescriptor(t,n))}),e}function h(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,i=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=i){var o=[],a=!0,u=!1;try{for(i=i.call(e);!(a=(n=i.next()).done)&&(o.push(n.value),!t||o.length!==t);a=!0);}catch(e){u=!0,r=e}finally{try{a||null==i.return||i.return()}finally{if(u)throw r}}return o}}(e,t)||function(e,t){if(e){if("string"==typeof e)return d(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return d(e,t)}}(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function g(e,t){var n,r,i,o={label:0,sent:function(){if(1&i[0])throw i[1];return i[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(a,"next",{value:l(0)}),u(a,"throw",{value:l(1)}),u(a,"return",{value:l(2)}),"function"==typeof Symbol&&u(a,Symbol.iterator,{value:function(){return this}}),a;function l(u){return function(l){var c=[u,l];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,c[0]&&(o=0)),o;)try{if(n=1,r&&(i=2&c[0]?r.return:c[0]?r.throw||((i=r.return)&&i.call(r),0):r.next)&&!(i=i.call(r,c[1])).done)return i;switch(r=0,i&&(c=[2&c[0],i.value]),c[0]){case 0:case 1:i=c;break;case 4:return o.label++,{value:c[1],done:!1};case 5:o.label++,r=c[1],c=[0];continue;case 7:c=o.ops.pop(),o.trys.pop();continue;default:if(!(i=(i=o.trys).length>0&&i[i.length-1])&&(6===c[0]||2===c[0])){o=0;continue}if(3===c[0]&&(!i||c[1]>i[0]&&c[1]<i[3])){o.label=c[1];break}if(6===c[0]&&o.label<i[1]){o.label=i[1],i=c;break}if(i&&o.label<i[2]){o.label=i[2],o.ops.push(c);break}i[2]&&o.ops.pop(),o.trys.pop();continue}c=t.call(e,o)}catch(e){c=[6,e],r=0}finally{n=i=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}function w(e){return"string"==typeof e?e.trim():Array.isArray(e)?e.map(function(e){return w(e)}):e&&(void 0===e?"undefined":e&&"u">typeof Symbol&&e.constructor===Symbol?"symbol":typeof e)=="object"?Object.fromEntries(Object.entries(e).map(function(e){var t=h(e,2);return[t[0],w(t[1])]})):e}function E(e){return y(function(){var t,n,r;return g(this,function(i){switch(i.label){case 0:if(n=w(e.raw.options||{}),"create"!==e.mode)return[3,2];return[4,e.resource.create({values:v(b({},e.raw),{options:n})})];case 1:case 3:return i.sent(),e.onSubmitted(),[2];case 2:if((null==(t=e.record)?void 0:t.name)==null)return[3,4];return r=v(b({},(0,l.cloneDeep)(e.record),e.raw),{options:b({},e.record.options||{},n)}),[4,e.resource.update({filterByTk:e.record.name,values:r})];case 4:throw Error("Edit mode requires record.name; got ".concat(JSON.stringify(e.record)))}})})()}function O(){return(0,o.useFlowContext)().api.resource("verifiers")}function A(e){var t,n=(0,f.Au)().t,r=(0,f.kj)(),d=(0,i.useApp)().pm.get(m.A),p=O(),b=h(u.Form.useForm(),1)[0],v=h((0,c.useState)(!1),2),w=v[0],A=v[1],S=(0,c.useMemo)(function(){return e.verificationTypeOptions.map(function(e){return{value:e.name,label:r(e.title||e.name)}})},[e.verificationTypeOptions,r]),T=(0,c.useMemo)(function(){return"edit"===e.mode?(0,l.cloneDeep)(e.record||{}):{name:(0,o.randomId)("v_"),verificationType:e.verificationType,options:{}}},[e.mode,e.record,e.verificationType]);(0,c.useEffect)(function(){b.setFieldsValue(T)},[b,T]);var j=(0,c.useMemo)(function(){var t,n,r=null==d||null==(n=d.verificationManager.getVerification(e.verificationType))||null==(t=n.components)?void 0:t.AdminSettingsFormLoader;return r?(0,c.lazy)(r):null},[d,e.verificationType]),k=(0,a.useMemoizedFn)(function(){return y(function(){var t;return g(this,function(n){switch(n.label){case 0:return[4,b.validateFields()];case 1:t=n.sent(),A(!0),n.label=2;case 2:return n.trys.push([2,,4,5]),[4,E({raw:t,mode:e.mode,record:e.record,resource:p,onSubmitted:e.onSubmitted})];case 3:return n.sent(),[3,5];case 4:return A(!1),[7];case 5:return[2]}})})()});return s().createElement(i.DrawerFormLayout,{title:n("create"===e.mode?"Add new":"Edit"),onSubmit:k,submitting:w,submitText:n("Submit"),cancelText:n("Cancel")},s().createElement(u.Form,{form:b,layout:"vertical",initialValues:T},s().createElement(u.Form.Item,{name:"name",label:n("UID"),rules:[{required:!0,message:n("Please enter a UID")},{pattern:/^[a-zA-Z0-9_-]+$/,message:n("a-z, A-Z, 0-9, _, -")}]},s().createElement(u.Input,{disabled:"edit"===e.mode})),s().createElement(u.Form.Item,{name:"title",label:n("Title")},s().createElement(u.Input,null)),s().createElement(u.Form.Item,{name:"description",label:n("Description")},s().createElement(u.Input.TextArea,null)),s().createElement(u.Form.Item,{name:"verificationType",hidden:!0},s().createElement(u.Input,null)),"edit"===e.mode?s().createElement(u.Form.Item,{label:n("Verification type")},s().createElement(u.Tag,null,null==(t=S.find(function(t){return t.value===e.verificationType}))?void 0:t.label)):null,j?s().createElement(c.Suspense,{fallback:null},s().createElement(j,null)):null))}function S(){var e,t=(0,f.Au)().t,n=(0,f.kj)(),l=(0,o.useFlowContext)(),m=u.theme.useToken().token,d=u.App.useApp().modal,p=O(),b=h((0,c.useState)(1),2),v=b[0],w=b[1],E=h((0,c.useState)([]),2),S=E[0],T=E[1],j=(e=O(),(0,a.useRequest)(function(){return y(function(){var t,n,r;return g(this,function(i){switch(i.label){case 0:return[4,e.listTypes()];case 1:return[2,Array.isArray(r=Array.isArray(n=null==(t=i.sent())?void 0:t.data)?n:null==n?void 0:n.data)?r:[]]}})})()},{cacheKey:"@nocobase/plugin-verification:verifiers:listTypes"})).data,k=(0,c.useMemo)(function(){return j||[]},[j]),I=(0,a.useRequest)(function(){return y(function(){return g(this,function(e){switch(e.label){case 0:return[4,p.list({page:v,pageSize:50,appends:[]})];case 1:var t,n,r,i,o,a,u,l;return[2,(a=Array.isArray(o=null==(i=null==(t=e.sent())?void 0:t.data)?void 0:i.data)?o:Array.isArray(null==o?void 0:o.data)?o.data:[],u=Array.isArray(o)||null==o?void 0:o.meta,{records:a,total:null!=(n=null!=(r=(l=(null==i?void 0:i.meta)||u||{}).count)?r:l.total)?n:a.length})]}})})()},{refreshDeps:[v]}),D=I.data,F=I.loading,x=I.refresh,P=(0,a.useMemoizedFn)(function(e,t,n){l.viewer.drawer({width:"50%",closable:!0,content:function(){return s().createElement(A,{mode:e,verificationType:t,verificationTypeOptions:k,record:n,onSubmitted:function(){return x()}})}})}),C=(0,a.useMemoizedFn)(function(e){d.confirm({title:t("Delete"),content:t("Are you sure you want to delete it?"),onOk:function(){return y(function(){return g(this,function(t){switch(t.label){case 0:return[4,p.destroy({filterByTk:e})];case 1:return t.sent(),T([]),x(),[2]}})})()}})}),_=(0,a.useMemoizedFn)(function(e){var t=k.find(function(t){return t.name===e});return n((null==t?void 0:t.title)||e||"")}),M=(0,c.useMemo)(function(){return[{title:t("UID"),dataIndex:"name"},{title:t("Title"),dataIndex:"title"},{title:t("Verification type"),dataIndex:"verificationType",render:function(e){return e?s().createElement(u.Tag,null,_(e)):null}},{title:t("Description"),dataIndex:"description"},{title:t("Actions"),width:160,render:function(e,n){return s().createElement(u.Space,null,s().createElement("a",{onClick:function(){n.verificationType&&P("edit",n.verificationType,n)}},t("Edit")),s().createElement("a",{onClick:function(){return null!=n.name&&C(n.name)}},t("Delete")))}}]},[C,P,t,_]);return s().createElement(u.Card,{variant:"borderless"},s().createElement("div",{style:{display:"flex",justifyContent:"flex-end",gap:m.marginSM,marginBottom:m.margin}},s().createElement(u.Button,{icon:s().createElement(r.DeleteOutlined,null),disabled:!S.length,onClick:function(){return C(S)}},t("Delete")),s().createElement(u.Dropdown,{menu:{items:k.map(function(e){return{key:e.name,label:n(e.title||e.name)}}),onClick:function(e){P("create",e.key)}},disabled:!k.length},s().createElement(u.Button,{type:"primary",icon:s().createElement(r.PlusOutlined,null)},t("Add new")," ",s().createElement(r.DownOutlined,null)))),s().createElement(i.Table,{rowKey:"name",loading:F,columns:M,dataSource:(null==D?void 0:D.records)||[],rowSelection:{selectedRowKeys:S,onChange:T},pagination:{current:v,pageSize:50,total:(null==D?void 0:D.total)||0,showSizeChanger:!1,onChange:w}}))}}}]);
@@ -0,0 +1,10 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+
10
+ "use strict";(self.webpackChunk_nocobase_plugin_verification_client_v2=self.webpackChunk_nocobase_plugin_verification_client_v2||[]).push([["548"],{239:function(e,t,n){n.r(t),n.d(t,{TencentSettings:function(){return m}});var a=n(485),l=n(59),r=n(155),s=n.n(r),i=n(488);function m(){var e=(0,i.Au)().t;return s().createElement(s().Fragment,null,s().createElement(l.Form.Item,{name:["options","settings","secretId"],label:e("Secret Id"),rules:[{required:!0,message:e("Please enter the Secret Id")}]},s().createElement(a.EnvVariableInput,null)),s().createElement(l.Form.Item,{name:["options","settings","secretKey"],label:e("Secret Key"),rules:[{required:!0,message:e("Please enter the Secret Key")}]},s().createElement(a.EnvVariableInput,{password:!0})),s().createElement(l.Form.Item,{name:["options","settings","region"],label:e("Region"),rules:[{required:!0,message:e("Please enter the region")}]},s().createElement(a.EnvVariableInput,null)),s().createElement(l.Form.Item,{name:["options","settings","endpoint"],label:e("Endpoint"),initialValue:"sms.tencentcloudapi.com"},s().createElement(a.EnvVariableInput,null)),s().createElement(l.Form.Item,{name:["options","settings","SignName"],label:e("Sign name")},s().createElement(a.EnvVariableInput,null)),s().createElement(l.Form.Item,{name:["options","settings","SmsSdkAppId"],label:e("Sms sdk app id"),rules:[{required:!0,message:e("Please enter the Sms sdk app id")}]},s().createElement(a.EnvVariableInput,null)),s().createElement(l.Form.Item,{name:["options","settings","TemplateId"],label:e("Template Id"),rules:[{required:!0,message:e("Please enter the Template Id")}]},s().createElement(a.EnvVariableInput,null)))}t.default=m}}]);
@@ -0,0 +1,10 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+
10
+ "use strict";(self.webpackChunk_nocobase_plugin_verification_client_v2=self.webpackChunk_nocobase_plugin_verification_client_v2||[]).push([["81"],{560:function(e,r,t){t.r(r),t.d(r,{AdminSettingsForm:function(){return f}});var n=t(485),o=t(694),a=t(59),l=t(155),u=t.n(l),i=t(488),c=t(373);function s(e,r,t,n,o,a,l){try{var u=e[a](l),i=u.value}catch(e){t(e);return}u.done?r(i):Promise.resolve(i).then(n,o)}function f(){var e=(0,i.Au)().t,r=(0,i.kj)(),t=(0,o.useFlowContext)(),f=(0,n.useApp)().pm.get(c.A),p=a.Form.useFormInstance(),v=a.Form.useWatch(["options","provider"],p),m=(0,l.useMemo)(function(){if(!v)return null;var e,r,t=null==f||null==(r=f.smsOTPProviderManager.getProvider(v))||null==(e=r.components)?void 0:e.AdminSettingsFormLoader;return t?(0,l.lazy)(t):null},[f,v]);return u().createElement(u().Fragment,null,u().createElement(a.Form.Item,{name:["options","provider"],label:e("Provider"),rules:[{required:!0,message:e("Please select a provider")}]},u().createElement(n.RemoteSelect,{request:function(){var e;return(e=function(){var e,r,n;return function(e,r){var t,n,o,a={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},l=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(l,"next",{value:i(0)}),u(l,"throw",{value:i(1)}),u(l,"return",{value:i(2)}),"function"==typeof Symbol&&u(l,Symbol.iterator,{value:function(){return this}}),l;function i(u){return function(i){var c=[u,i];if(t)throw TypeError("Generator is already executing.");for(;l&&(l=0,c[0]&&(a=0)),a;)try{if(t=1,n&&(o=2&c[0]?n.return:c[0]?n.throw||((o=n.return)&&o.call(n),0):n.next)&&!(o=o.call(n,c[1])).done)return o;switch(n=0,o&&(c=[2&c[0],o.value]),c[0]){case 0:case 1:o=c;break;case 4:return a.label++,{value:c[1],done:!1};case 5:a.label++,n=c[1],c=[0];continue;case 7:c=a.ops.pop(),a.trys.pop();continue;default:if(!(o=(o=a.trys).length>0&&o[o.length-1])&&(6===c[0]||2===c[0])){a=0;continue}if(3===c[0]&&(!o||c[1]>o[0]&&c[1]<o[3])){a.label=c[1];break}if(6===c[0]&&a.label<o[1]){a.label=o[1],o=c;break}if(o&&a.label<o[2]){a.label=o[2],a.ops.push(c);break}o[2]&&a.ops.pop(),a.trys.pop();continue}c=r.call(e,a)}catch(e){c=[6,e],n=0}finally{t=o=0}if(5&c[0])throw c[1];return{value:c[0]?c[1]:void 0,done:!0}}}}(this,function(o){switch(o.label){case 0:return[4,t.api.resource("smsOTPProviders").list()];case 1:return[2,Array.isArray(n=null==(r=o.sent())||null==(e=r.data)?void 0:e.data)?n:[]]}})},function(){var r=this,t=arguments;return new Promise(function(n,o){var a=e.apply(r,t);function l(e){s(a,n,o,l,u,"next",e)}function u(e){s(a,n,o,l,u,"throw",e)}l(void 0)})})()},cacheKey:"@nocobase/plugin-verification:smsOTPProviders:list",mapOptions:function(e){return{label:r(e.title||e.name),value:e.name}}})),m?u().createElement(l.Suspense,{fallback:null},u().createElement(m,null)):null)}r.default=f}}]);
@@ -0,0 +1,10 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+
10
+ "use strict";(self.webpackChunk_nocobase_plugin_verification_client_v2=self.webpackChunk_nocobase_plugin_verification_client_v2||[]).push([["934"],{397:function(e,n,r){r.r(n),r.d(n,{BindForm:function(){return c}});var t=r(59),i=r(155),a=r.n(i),o=r(17),u=r(488);function c(e){var n=e.verifier,r=e.actionType,i=e.isLogged,c=(0,u.Au)().t,l=t.Form.useFormInstance(),s=t.Form.useWatch("uuid",l);return a().createElement(a().Fragment,null,a().createElement(t.Form.Item,{name:"uuid",label:c("Phone"),rules:[{required:!0,message:c("Please enter a phone number")}]},a().createElement(t.Input,null)),a().createElement(t.Form.Item,{name:"code",label:c("Verification code"),rules:[{required:!0,message:c("Please enter the verification code")}]},a().createElement(o.n,{actionType:r,verifier:n,phone:s,isLogged:i})))}n.default=c}}]);
@@ -0,0 +1,10 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+
10
+ "use strict";(self.webpackChunk_nocobase_plugin_verification_client_v2=self.webpackChunk_nocobase_plugin_verification_client_v2||[]).push([["973"],{708:function(e,t,n){n.r(t),n.d(t,{AliyunSettings:function(){return c}});var s=n(485),a=n(59),l=n(155),r=n.n(l),i=n(488);function c(){var e=(0,i.Au)().t;return r().createElement(r().Fragment,null,r().createElement(a.Form.Item,{name:["options","settings","accessKeyId"],label:e("Access Key ID"),rules:[{required:!0,message:e("Please enter the Access Key ID")}]},r().createElement(s.EnvVariableInput,null)),r().createElement(a.Form.Item,{name:["options","settings","accessKeySecret"],label:e("Access Key Secret"),rules:[{required:!0,message:e("Please enter the Access Key Secret")}]},r().createElement(s.EnvVariableInput,{password:!0})),r().createElement(a.Form.Item,{name:["options","settings","endpoint"],label:e("Endpoint"),rules:[{required:!0,message:e("Please enter the endpoint")}]},r().createElement(s.EnvVariableInput,null)),r().createElement(a.Form.Item,{name:["options","settings","sign"],label:e("Sign"),rules:[{required:!0,message:e("Please enter the sign")}]},r().createElement(s.EnvVariableInput,null)),r().createElement(a.Form.Item,{name:["options","settings","template"],label:e("Template code"),rules:[{required:!0,message:e("Please enter the template code")}]},r().createElement(s.EnvVariableInput,null)))}t.default=c}}]);
@@ -0,0 +1,49 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import React from 'react';
10
+ export interface VerificationCodeProps {
11
+ /** Persisted OTP value. Controlled by the parent `Form.Item`. */
12
+ value?: string;
13
+ onChange?: (next: string) => void;
14
+ /**
15
+ * Server-side action the OTP grants (e.g. `auth:signIn`,
16
+ * `verifiers:bind`, `twoFactorAuth:verify`). Forwarded to the
17
+ * `smsOTP:*` endpoint so the OTP is bound to a specific action.
18
+ */
19
+ actionType: string;
20
+ /** Verifier name (a row in the `verifiers` collection). */
21
+ verifier: string;
22
+ /**
23
+ * The phone number the OTP is sent to. Parent reads it via
24
+ * `Form.useWatch('uuid', form)` and forwards it here. Required at send
25
+ * time — the send button is disabled until it has a value.
26
+ */
27
+ phone?: string;
28
+ /**
29
+ * Whether the user is already signed in. Drives the choice between
30
+ * `smsOTP:create` (logged-in) and `smsOTP:publicCreate` (anonymous).
31
+ * Defaults to `false` (anonymous).
32
+ */
33
+ isLogged?: boolean;
34
+ disabled?: boolean;
35
+ placeholder?: string;
36
+ }
37
+ /**
38
+ * Verification-code input + "Send code / Retry in N s" button pair.
39
+ *
40
+ * Rewrite of v1's `VerificationCode`:
41
+ * - No `withDynamicSchemaProps`, no `useForm()` — the parent owns the
42
+ * phone value via `Form.useWatch` and passes it in as a prop.
43
+ * - Countdown starts from the server-reported `expiresAt` so the UI
44
+ * tracks the same window the server enforces.
45
+ * - Clearing the code on resend matches v1 behaviour so the user has
46
+ * to type the new code rather than reusing the stale one.
47
+ */
48
+ export declare function VerificationCode(props: VerificationCodeProps): React.JSX.Element;
49
+ export default VerificationCode;
@@ -0,0 +1,45 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import React from 'react';
10
+ export interface VerifierSelectProps {
11
+ /**
12
+ * Verification scene name passed to `verifiers:listByScene`. Each
13
+ * consumer plugin uses its own scene (e.g. `auth-sms`, `two-factor`,
14
+ * `unbind-verifier`) so different scenes can opt different verifier
15
+ * types in or out via server config.
16
+ */
17
+ scene: string;
18
+ value?: string | string[];
19
+ onChange?: (next: string | string[]) => void;
20
+ /** Default false. */
21
+ multiple?: boolean;
22
+ placeholder?: string;
23
+ disabled?: boolean;
24
+ /**
25
+ * antd `Select` style passthrough. Keep this open in case a caller
26
+ * needs to size the dropdown explicitly inside a constrained form.
27
+ */
28
+ style?: React.CSSProperties;
29
+ /**
30
+ * Suppress the helper text rendered under the Select. Defaults to
31
+ * `false`; pass `true` when the caller wants to host its own hint
32
+ * (e.g. inside a `Form.Item.extra` slot).
33
+ */
34
+ hideHint?: boolean;
35
+ }
36
+ /**
37
+ * Domain wrapper around the framework-level `RemoteSelect`. Loads the
38
+ * verifiers configured for `scene` from `/verifiers:listByScene` and
39
+ * binds them to a single- or multi-select. The helper text underneath
40
+ * mirrors the v1 affordance: a list of available verifier types and a
41
+ * deep link into the admin settings page. The list of available types
42
+ * comes from the same response, so no extra request is needed.
43
+ */
44
+ export declare function VerifierSelect(props: VerifierSelectProps): React.JSX.Element;
45
+ export default VerifierSelect;
@@ -0,0 +1,19 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ export { PROVIDER_TYPE_SMS_ALIYUN, PROVIDER_TYPE_SMS_TENCENT, SMS_OTP_VERIFICATION_TYPE } from '../constants';
10
+ export { default, PluginVerificationClientV2 } from './plugin';
11
+ export { NAMESPACE, useT, useVerificationTranslation } from './locale';
12
+ export { VerificationManager } from './verification-manager';
13
+ export type { BindFormProps, VerificationFormProps, VerificationTypeOptions } from './verification-manager';
14
+ export { SMSOTPProviderManager } from './otp-sms-provider-manager';
15
+ export type { SMSOTPProviderOptions } from './otp-sms-provider-manager';
16
+ export { VerifierSelect } from './components/VerifierSelect';
17
+ export type { VerifierSelectProps } from './components/VerifierSelect';
18
+ export { VerificationCode } from './components/VerificationCode';
19
+ export type { VerificationCodeProps } from './components/VerificationCode';
@@ -0,0 +1,10 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+
10
+ !function(e,t){"object"==typeof exports&&"object"==typeof module?module.exports=t(require("ahooks"),require("react-i18next"),require("@nocobase/client-v2"),require("react-router-dom"),require("react"),require("antd"),require("@ant-design/icons"),require("@nocobase/flow-engine"),require("@nocobase/utils/client"),require("lodash")):"function"==typeof define&&define.amd?define("@nocobase/plugin-verification/client-v2",["ahooks","react-i18next","@nocobase/client-v2","react-router-dom","react","antd","@ant-design/icons","@nocobase/flow-engine","@nocobase/utils/client","lodash"],t):"object"==typeof exports?exports["@nocobase/plugin-verification/client-v2"]=t(require("ahooks"),require("react-i18next"),require("@nocobase/client-v2"),require("react-router-dom"),require("react"),require("antd"),require("@ant-design/icons"),require("@nocobase/flow-engine"),require("@nocobase/utils/client"),require("lodash")):e["@nocobase/plugin-verification/client-v2"]=t(e.ahooks,e["react-i18next"],e["@nocobase/client-v2"],e["react-router-dom"],e.react,e.antd,e["@ant-design/icons"],e["@nocobase/flow-engine"],e["@nocobase/utils/client"],e.lodash)}(self,function(e,t,n,r,o,i,a,u,c,l){return function(){"use strict";var s,f,p,v={17:function(e,t,n){n.d(t,{n:function(){return f}});var r=n(694),o=n(625),i=n(59),a=n(155),u=n.n(a),c=n(488);function l(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function s(e,t,n,r,o,i,a){try{var u=e[i](a),c=u.value}catch(e){n(e);return}u.done?t(c):Promise.resolve(c).then(r,o)}function f(e){var t,n=e.value,f=e.onChange,p=e.actionType,v=e.verifier,d=e.phone,b=e.isLogged,y=e.disabled,h=e.placeholder,m=(0,c.Au)().t,g=(0,r.useFlowContext)(),w=i.App.useApp(),S=w.message,O=w.notification,E=function(e){if(Array.isArray(e))return e}(t=(0,a.useState)(0))||function(e){var t,n,r=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var o=[],i=!0,a=!1;try{for(r=r.call(e);!(i=(t=r.next()).done)&&(o.push(t.value),2!==o.length);i=!0);}catch(e){a=!0,n=e}finally{try{i||null==r.return||r.return()}finally{if(a)throw n}}return o}}(t)||function(e){if(e){if("string"==typeof e)return l(e,2);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return l(e,2)}}(t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),x=E[0],k=E[1],P=(0,a.useRef)(null);(0,a.useEffect)(function(){x<=0&&P.current&&(clearInterval(P.current),P.current=null)},[x]),(0,a.useEffect)(function(){return function(){P.current&&(clearInterval(P.current),P.current=null)}},[]);var j=(0,o.useMemoizedFn)(function(){var e;return(e=function(){var e,t,r,o,i,a,u,c,l,s;return function(e,t){var n,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(a,"next",{value:c(0)}),u(a,"throw",{value:c(1)}),u(a,"return",{value:c(2)}),"function"==typeof Symbol&&u(a,Symbol.iterator,{value:function(){return this}}),a;function c(u){return function(c){var l=[u,c];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&l[0]?r.return:l[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,l[1])).done)return o;switch(r=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,r=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){i.label=l[1];break}if(6===l[0]&&i.label<o[1]){i.label=o[1],o=l;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(l);break}o[2]&&i.ops.pop(),i.trys.pop();continue}l=t.call(e,i)}catch(e){l=[6,e],r=0}finally{n=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(y){switch(y.label){case 0:if(x>0)return[2];if(!d)return S.error(m("Please enter a phone number first")),[2];e=b?"create":"publicCreate",y.label=1;case 1:return y.trys.push([1,3,,4]),[4,g.api.resource("smsOTP")[e]({values:{action:p,verifier:v,uuid:d}})];case 2:return o=(null==(r=y.sent())||null==(t=r.data)?void 0:t.data)||{},S.success(m("Operation succeeded")),n&&(null==f||f("")),k(o.expiresAt?Math.max(1,Math.ceil((Date.parse(o.expiresAt)-Date.now())/1e3)):60),P.current=setInterval(function(){k(function(e){return e-1})},1e3),[3,4];case 3:return s=(null==(i=y.sent())||null==(l=i.response)||null==(c=l.data)||null==(u=c.errors)||null==(a=u[0])?void 0:a.message)||(null==i?void 0:i.message),O.error({message:s||m("Verification send failed, please try later or contact to administrator")}),[3,4];case 4:return[2]}})},function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){s(i,r,o,a,u,"next",e)}function u(e){s(i,r,o,a,u,"throw",e)}a(void 0)})})()});return u().createElement(i.Space.Compact,{style:{width:"100%"}},u().createElement(i.Input,{value:n,onChange:function(e){return null==f?void 0:f(e.target.value)},disabled:y,placeholder:h}),u().createElement(i.Button,{onClick:j,disabled:y||x>0},x>0?m("Retry after {{count}} seconds",{count:x}):m("Send code")))}},373:function(e,t,n){n.d(t,{A:function(){return D},I:function(){return z}});var r=n(485),o=n(624),i=n(488),a={components:{VerificationFormLoader:function(){return n.e("190").then(n.bind(n,653))},AdminSettingsFormLoader:function(){return n.e("81").then(n.bind(n,560))},BindFormLoader:function(){return n.e("934").then(n.bind(n,397))}}},u={components:{AdminSettingsFormLoader:function(){return n.e("973").then(n.bind(n,708))}}},c={components:{AdminSettingsFormLoader:function(){return n.e("548").then(n.bind(n,239))}}},l=n(261),s=n(155),f=n.n(s),p=n(694),v=n(625),d=n(59);function b(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function y(e,t,n,r,o,i,a){try{var u=e[i](a),c=u.value}catch(e){n(e);return}u.done?t(c):Promise.resolve(c).then(r,o)}function h(e){return function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){y(i,r,o,a,u,"next",e)}function u(e){y(i,r,o,a,u,"throw",e)}a(void 0)})}}function m(e){for(var t=1;t<arguments.length;t++){var n=null!=arguments[t]?arguments[t]:{},r=Object.keys(n);"function"==typeof Object.getOwnPropertySymbols&&(r=r.concat(Object.getOwnPropertySymbols(n).filter(function(e){return Object.getOwnPropertyDescriptor(n,e).enumerable}))),r.forEach(function(t){var r;r=n[t],t in e?Object.defineProperty(e,t,{value:r,enumerable:!0,configurable:!0,writable:!0}):e[t]=r})}return e}function g(e,t){return function(e){if(Array.isArray(e))return e}(e)||function(e,t){var n,r,o=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=o){var i=[],a=!0,u=!1;try{for(o=o.call(e);!(a=(n=o.next()).done)&&(i.push(n.value),!t||i.length!==t);a=!0);}catch(e){u=!0,r=e}finally{try{a||null==o.return||o.return()}finally{if(u)throw r}}return i}}(e,t)||function(e,t){if(e){if("string"==typeof e)return b(e,t);var n=Object.prototype.toString.call(e).slice(8,-1);if("Object"===n&&e.constructor&&(n=e.constructor.name),"Map"===n||"Set"===n)return Array.from(n);if("Arguments"===n||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n))return b(e,t)}}(e,t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}()}function w(e,t){var n,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(a,"next",{value:c(0)}),u(a,"throw",{value:c(1)}),u(a,"return",{value:c(2)}),"function"==typeof Symbol&&u(a,Symbol.iterator,{value:function(){return this}}),a;function c(u){return function(c){var l=[u,c];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&l[0]?r.return:l[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,l[1])).done)return o;switch(r=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,r=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){i.label=l[1];break}if(6===l[0]&&i.label<o[1]){i.label=o[1],o=l;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(l);break}o[2]&&i.ops.pop(),i.trys.pop();continue}l=t.call(e,i)}catch(e){l=[6,e],r=0}finally{n=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}function S(){var e=new Map;return function(t,n){var r=e.get(t);if(r)return r;var o=(0,s.lazy)(n);return e.set(t,o),o}}var O=S();function E(e){var t,n,o=(0,i.Au)().t,a=(0,i.kj)(),u=(0,p.useFlowContext)(),c=(0,r.useApp)().pm.get(D),l=null==c||null==(n=c.verificationManager.getVerification(e.verifier.verificationType))||null==(t=n.components)?void 0:t.BindFormLoader,b=(0,s.useMemo)(function(){return l?O(e.verifier.verificationType,l):null},[l,e.verifier.verificationType]),y=g(d.Form.useForm(),1)[0],S=g((0,s.useState)(!1),2),E=S[0],x=S[1],k=a(e.verifier.title||"")||o("Bind"),P=(0,v.useMemoizedFn)(function(){return h(function(){var t;return w(this,function(n){switch(n.label){case 0:return[4,y.validateFields()];case 1:t=n.sent(),x(!0),n.label=2;case 2:return n.trys.push([2,,4,5]),[4,u.api.resource("verifiers").bind({values:m({verifier:e.verifier.name},t)})];case 3:return n.sent(),e.onSubmitted(),[3,5];case 4:return x(!1),[7];case 5:return[2]}})})()});return b?f().createElement(r.DialogFormLayout,{title:k,onSubmit:P,submitting:E,submitText:o("Bind"),cancelText:o("Cancel")},f().createElement(d.Form,{form:y,layout:"vertical"},f().createElement(s.Suspense,{fallback:f().createElement(d.Spin,null)},f().createElement(b,{verifier:e.verifier.name,actionType:"verifiers:bind",isLogged:!0})))):f().createElement(r.DialogFormLayout,{title:k,onSubmit:function(){return h(function(){return w(this,function(e){return[2,void 0]})})()},submitText:o("Close"),cancelText:o("Cancel")},f().createElement(d.Alert,{type:"warning",showIcon:!0,message:o("This verifier type ({{type}}) is not yet supported in the new client. Please switch to the legacy client to bind it.",{type:e.verifier.verificationType})}))}var x=S();function k(e){var t,n=(0,i.kj)(),o=(0,i.Au)().t,a=(0,p.useFlowContext)(),u=(0,r.useApp)().pm.get(D),c=null==(t=e.availableVerifiers[0])?void 0:t.name,l=g((0,s.useState)(c),2),b=l[0],y=l[1],S=g(d.Form.useForm(),1)[0],O=g((0,s.useState)(!1),2),E=O[0],k=O[1],P=(0,v.useMemoizedFn)(function(){return h(function(){var t;return w(this,function(n){switch(n.label){case 0:if(!b)return[2];return[4,S.validateFields()];case 1:t=n.sent(),k(!0),n.label=2;case 2:return n.trys.push([2,,4,5]),[4,a.api.resource("verifiers").unbind({values:m({verifier:b,unbindVerifier:e.targetVerifier.name},t)})];case 3:return n.sent(),e.onSubmitted(),[3,5];case 4:return k(!1),[7];case 5:return[2]}})})()}),j=e.availableVerifiers.map(function(e){var t,r,o=null==u||null==(r=u.verificationManager.getVerification(e.verificationType))||null==(t=r.components)?void 0:t.VerificationFormLoader;if(!o)return null;var i=x(e.verificationType,o),a=n(e.title||"")||n(e.verificationTypeTitle||e.verificationType);return{key:e.name,label:a,children:f().createElement(s.Suspense,{fallback:f().createElement(d.Spin,null)},f().createElement(i,{verifier:e.name,actionType:"verifiers:unbind",boundInfo:e.boundInfo,isLogged:!0}))}}).filter(Boolean);return f().createElement(r.DialogFormLayout,{title:o("Unbind verifier"),onSubmit:P,submitting:E,submitText:o("Unbind"),cancelText:o("Cancel")},f().createElement(d.Form,{form:S,layout:"vertical"},j.length?f().createElement(d.Tabs,{activeKey:b,onChange:function(e){S.resetFields(),y(e)},destroyInactiveTabPane:!0,items:j}):f().createElement("span",null,o("No verifier available to verify your identity."))))}function P(e){var t,n=(0,i.Au)().t,r=(0,p.useFlowContext)(),o=!!(null==(t=e.verifier.boundInfo)?void 0:t.bound),a=(0,v.useMemoizedFn)(function(){r.viewer.dialog({closable:!0,content:function(){return f().createElement(E,{verifier:e.verifier,onSubmitted:function(){return e.onChanged()}})}})}),u=(0,v.useMemoizedFn)(function(){return h(function(){var t,n,o;return w(this,function(i){switch(i.label){case 0:return[4,r.api.resource("verifiers").listForVerify({scene:"unbind-verifier"})];case 1:return o=(null==(n=i.sent())||null==(t=n.data)?void 0:t.data)||[],r.viewer.dialog({closable:!0,content:function(){return f().createElement(k,{targetVerifier:e.verifier,availableVerifiers:o,onSubmitted:function(){return e.onChanged()}})}}),[2]}})})()});return o?f().createElement("a",{onClick:u},n("Unbind")):f().createElement("a",{onClick:a},n("Bind"))}function j(){var e=(0,i.kj)(),t=(0,i.Au)().t,n=(0,p.useFlowContext)(),r=d.App.useApp().message,o=(0,v.useRequest)(function(){return h(function(){var e,t;return w(this,function(r){switch(r.label){case 0:return[4,n.api.resource("verifiers").listByUser()];case 1:return[2,(null==(t=r.sent())||null==(e=t.data)?void 0:e.data)||[]]}})})()}),a=o.data,u=o.loading,c=o.refresh,l=(0,v.useMemoizedFn)(function(){c(),r.success(t("Operation succeeded"))});return u?f().createElement(d.Spin,null):f().createElement(d.List,{bordered:!0,dataSource:a||[],renderItem:function(n){var r,o;return f().createElement(d.List.Item,{actions:[f().createElement(P,{key:"action",verifier:n,onChanged:l})]},f().createElement(d.List.Item.Meta,{title:f().createElement(f().Fragment,null,e(n.title||"")," ",(null==(r=n.boundInfo)?void 0:r.bound)?f().createElement(d.Tag,{color:"success"},t("Configured")):f().createElement(d.Tag,{color:"warning"},t("Not configured"))),description:e(n.description||"")}),f().createElement("div",null,null==(o=n.boundInfo)?void 0:o.publicInfo))}})}function T(e,t,n,r,o,i,a){try{var u=e[i](a),c=u.value}catch(e){n(e);return}u.done?t(c):Promise.resolve(c).then(r,o)}function _(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function C(e){return(C=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function A(e,t){return(A=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function I(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return(I=function(){return!!e})()}var M=[i.CU,"client"],F=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function n(){var e,t,r;if(!(this instanceof n))throw TypeError("Cannot call a class as a function");return t=n,r=arguments,t=C(t),_(e=function(e,t){var n;if(t&&("object"==((n=t)&&"u">typeof Symbol&&n.constructor===Symbol?"symbol":typeof n)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,I()?Reflect.construct(t,r||[],C(this).constructor):t.apply(this,r)),"section","profile"),_(e,"sort",150),_(e,"label","Verification"),e}return n.prototype=Object.create(e&&e.prototype,{constructor:{value:n,writable:!0,configurable:!0}}),e&&A(n,e),t=[{key:"getLabelNode",value:function(){return this.context.t("Verification",{ns:M,nsMode:"fallback"})}},{key:"onClick",value:function(){var e;return(e=function(){return function(e,t){var n,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(a,"next",{value:c(0)}),u(a,"throw",{value:c(1)}),u(a,"return",{value:c(2)}),"function"==typeof Symbol&&u(a,Symbol.iterator,{value:function(){return this}}),a;function c(u){return function(c){var l=[u,c];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&l[0]?r.return:l[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,l[1])).done)return o;switch(r=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,r=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){i.label=l[1];break}if(6===l[0]&&i.label<o[1]){i.label=o[1],o=l;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(l);break}o[2]&&i.ops.pop(),i.trys.pop();continue}l=t.call(e,i)}catch(e){l=[6,e],r=0}finally{n=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(e){return this.context.viewer.drawer({title:this.context.t("Verification",{ns:M,nsMode:"fallback"}),width:"50%",closable:!0,content:function(){return f().createElement(j,null)}}),[2]})},function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){T(i,r,o,a,u,"next",e)}function u(e){T(i,r,o,a,u,"throw",e)}a(void 0)})}).call(this)}}],function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}(n.prototype,t),n}(r.UserCenterActionItemModel);_(F,"itemId","verification");var V=n(319);function q(e,t,n,r,o,i,a){try{var u=e[i](a),c=u.value}catch(e){n(e);return}u.done?t(c):Promise.resolve(c).then(r,o)}function L(e,t,n){return(L=$()?Reflect.construct:function(e,t,n){var r=[null];r.push.apply(r,t);var o=new(Function.bind.apply(e,r));return n&&B(o,n.prototype),o}).apply(null,arguments)}function R(e,t,n){return t in e?Object.defineProperty(e,t,{value:n,enumerable:!0,configurable:!0,writable:!0}):e[t]=n,e}function U(e){return(U=Object.setPrototypeOf?Object.getPrototypeOf:function(e){return e.__proto__||Object.getPrototypeOf(e)})(e)}function B(e,t){return(B=Object.setPrototypeOf||function(e,t){return e.__proto__=t,e})(e,t)}function N(e){var t="function"==typeof Map?new Map:void 0;return(N=function(e){if(null===e||-1===Function.toString.call(e).indexOf("[native code]"))return e;if("function"!=typeof e)throw TypeError("Super expression must either be null or a function");if(void 0!==t){if(t.has(e))return t.get(e);t.set(e,n)}function n(){return L(e,arguments,U(this).constructor)}return n.prototype=Object.create(e.prototype,{constructor:{value:n,enumerable:!1,writable:!0,configurable:!0}}),B(n,e)})(e)}function $(){try{var e=!Boolean.prototype.valueOf.call(Reflect.construct(Boolean,[],function(){}))}catch(e){}return($=function(){return!!e})()}var z=function(e){var t;if("function"!=typeof e&&null!==e)throw TypeError("Super expression must either be null or a function");function r(){var e,t,n;if(!(this instanceof r))throw TypeError("Cannot call a class as a function");return t=r,n=arguments,t=U(t),R(e=function(e,t){var n;if(t&&("object"==((n=t)&&"u">typeof Symbol&&n.constructor===Symbol?"symbol":typeof n)||"function"==typeof t))return t;if(void 0===e)throw ReferenceError("this hasn't been initialised - super() hasn't been called");return e}(this,$()?Reflect.construct(t,n||[],U(this).constructor):t.apply(this,n)),"verificationManager",new V.X),R(e,"smsOTPProviderManager",new l.X),e}return r.prototype=Object.create(e&&e.prototype,{constructor:{value:r,writable:!0,configurable:!0}}),e&&B(r,e),t=[{key:"load",value:function(){var e;return(e=function(){return function(e,t){var n,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(a,"next",{value:c(0)}),u(a,"throw",{value:c(1)}),u(a,"return",{value:c(2)}),"function"==typeof Symbol&&u(a,Symbol.iterator,{value:function(){return this}}),a;function c(u){return function(c){var l=[u,c];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&l[0]?r.return:l[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,l[1])).done)return o;switch(r=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,r=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){i.label=l[1];break}if(6===l[0]&&i.label<o[1]){i.label=o[1],o=l;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(l);break}o[2]&&i.ops.pop(),i.trys.pop();continue}l=t.call(e,i)}catch(e){l=[6,e],r=0}finally{n=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(e){return this.app.flowEngine.registerModels({VerificationUserCenterItemModel:F}),this.registerSettingsPages(),this.verificationManager.registerVerificationType(o.Fz,a),this.smsOTPProviderManager.registerProvider(o.ob,u),this.smsOTPProviderManager.registerProvider(o.Zs,c),[2]})},function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){q(i,r,o,a,u,"next",e)}function u(e){q(i,r,o,a,u,"throw",e)}a(void 0)})}).call(this)}},{key:"registerSettingsPages",value:function(){var e=this,t=function(t){return e.app.i18n.t(t,{ns:i.CU})};this.pluginSettingsManager.addMenuItem({key:i.CU,title:t("Verification"),icon:"CheckCircleOutlined",aclSnippet:"pm.verification"}),this.pluginSettingsManager.addPageTabItem({menuKey:i.CU,key:"index",title:t("Verifiers"),icon:"CheckCircleOutlined",aclSnippet:"pm.verification.verifiers",sort:1,componentLoader:function(){return n.e("290").then(n.bind(n,289))}})}}],function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}(r.prototype,t),r}(N(r.Plugin)),D=z},488:function(e,t,n){n.d(t,{Au:function(){return a},CU:function(){return i},kj:function(){return u}});var r=n(694),o=n(953),i="verification";function a(){return(0,o.useTranslation)([i,"client"],{nsMode:"fallback"})}function u(){var e=(0,r.useFlowEngine)();return function(t){return e.context.t(t,{ns:[i,"client"],nsMode:"fallback"})}}},261:function(e,t,n){n.d(t,{X:function(){return o}});var r=n(768),o=function(){var e;function t(){var e,n;if(!(this instanceof t))throw TypeError("Cannot call a class as a function");e="providers",n=new r.Registry,e in this?Object.defineProperty(this,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):this[e]=n}return e=[{key:"registerProvider",value:function(e,t){this.providers.register(e,t)}},{key:"getProvider",value:function(e){return this.providers.get(e)}}],function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}(t.prototype,e),t}()},319:function(e,t,n){n.d(t,{X:function(){return o}});var r=n(768),o=function(){var e;function t(){var e,n;if(!(this instanceof t))throw TypeError("Cannot call a class as a function");e="verifications",n=new r.Registry,e in this?Object.defineProperty(this,e,{value:n,enumerable:!0,configurable:!0,writable:!0}):this[e]=n}return e=[{key:"registerVerificationType",value:function(e,t){this.verifications.register(e,t)}},{key:"getVerification",value:function(e){return this.verifications.get(e)}}],function(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}(t.prototype,e),t}()},624:function(e,t,n){n.d(t,{Fz:function(){return r},Zs:function(){return i},ob:function(){return o}});var r="sms-otp",o="sms-aliyun",i="sms-tencent"},375:function(e){e.exports=a},485:function(e){e.exports=n},694:function(e){e.exports=u},768:function(e){e.exports=c},625:function(t){t.exports=e},59:function(e){e.exports=i},773:function(e){e.exports=l},155:function(e){e.exports=o},953:function(e){e.exports=t},442:function(e){e.exports=r}},d={};function b(e){var t=d[e];if(void 0!==t)return t.exports;var n=d[e]={exports:{}};return v[e](n,n.exports,b),n.exports}b.m=v,b.n=function(e){var t=e&&e.__esModule?function(){return e.default}:function(){return e};return b.d(t,{a:t}),t},b.d=function(e,t){for(var n in t)b.o(t,n)&&!b.o(e,n)&&Object.defineProperty(e,n,{enumerable:!0,get:t[n]})},b.f={},b.e=function(e){return Promise.all(Object.keys(b.f).reduce(function(t,n){return b.f[n](e,t),t},[]))},b.u=function(e){return""+e+"."+({190:"596918843af85477",290:"a651bc7c42fc98bc",548:"eb3ed70d62d68d60",81:"b8599d97bf4ca2a8",934:"a3c0fa32883528e4",973:"8a85e3793371482b"})[e]+".js"},b.g=function(){if("object"==typeof globalThis)return globalThis;try{return this||Function("return this")()}catch(e){if("object"==typeof window)return window}}(),b.o=function(e,t){return Object.prototype.hasOwnProperty.call(e,t)},y={},b.l=function(e,t,n,r){if(y[e])return void y[e].push(t);if(void 0!==n)for(var o,i,a=document.getElementsByTagName("script"),u=0;u<a.length;u++){var c=a[u];if(c.getAttribute("src")==e||c.getAttribute("data-rspack")=="@nocobase/plugin-verification/client-v2:"+n){o=c;break}}o||(i=!0,(o=document.createElement("script")).timeout=120,b.nc&&o.setAttribute("nonce",b.nc),o.setAttribute("data-rspack","@nocobase/plugin-verification/client-v2:"+n),o.src=e),y[e]=[t];var l=function(t,n){o.onerror=o.onload=null,clearTimeout(s);var r=y[e];if(delete y[e],o.parentNode&&o.parentNode.removeChild(o),r&&r.forEach(function(e){return e(n)}),t)return t(n)},s=setTimeout(l.bind(null,void 0,{type:"timeout",target:o}),12e4);o.onerror=l.bind(null,o.onerror),o.onload=l.bind(null,o.onload),i&&document.head.appendChild(o)},b.r=function(e){"u">typeof Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},b.g.importScripts&&(h=b.g.location+"");var y,h,m=b.g.document;if(!h&&m&&(m.currentScript&&"SCRIPT"===m.currentScript.tagName.toUpperCase()&&(h=m.currentScript.src),!h)){var g=m.getElementsByTagName("script");if(g.length)for(var w=g.length-1;w>-1&&(!h||!/^http(s?):/.test(h));)h=g[w--].src}if(!h)throw Error("Automatic publicPath is not supported in this browser");b.p=h.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/"),s={889:0},b.f.j=function(e,t){var n=b.o(s,e)?s[e]:void 0;if(0!==n)if(n)t.push(n[2]);else{var r=new Promise(function(t,r){n=s[e]=[t,r]});t.push(n[2]=r);var o=b.p+b.u(e),i=Error();b.l(o,function(t){if(b.o(s,e)&&(0!==(n=s[e])&&(s[e]=void 0),n)){var r=t&&("load"===t.type?"missing":t.type),o=t&&t.target&&t.target.src;i.message="Loading chunk "+e+" failed.\n("+r+": "+o+")",i.name="ChunkLoadError",i.type=r,i.request=o,n[1](i)}},"chunk-"+e,e)}},f=function(e,t){var n,r,o=t[0],i=t[1],a=t[2],u=0;if(o.some(function(e){return 0!==s[e]})){for(n in i)b.o(i,n)&&(b.m[n]=i[n]);a&&a(b)}for(e&&e(t);u<o.length;u++)r=o[u],b.o(s,r)&&s[r]&&s[r][0](),s[r]=0},(p=self.webpackChunk_nocobase_plugin_verification_client_v2=self.webpackChunk_nocobase_plugin_verification_client_v2||[]).forEach(f.bind(null,0)),p.push=f.bind(null,p.push.bind(p));var S={};return!function(){var e="",t="u">typeof document?document.currentScript:null;if(t&&t.src&&(e=t.src.replace(/^blob:/,"").replace(/#.*$/,"").replace(/\?.*$/,"").replace(/\/[^\/]+$/,"/")),!e){var n=window.__webpack_public_path__||"";n&&("/"!==n.charAt(n.length-1)&&(n+="/"),e=n+"static/plugins/@nocobase/plugin-verification/dist/client-v2/")}if(!e){var r=window.__nocobase_modern_client_prefix__||"v",o="/"+(r=String(r).replace(/^\/+|\/+$/g,"")||"v")+"/";if(!(e=window.__nocobase_public_path__||"")&&window.location&&window.location.pathname){var i=window.location.pathname||"/",a=i.indexOf(o);e=a>=0?i.slice(0,a+1):"/"}e&&(e=e.replace(RegExp("/"+r+"/?$"),"/")),e||(e="/"),"/"!==e.charAt(e.length-1)&&(e+="/"),e+="static/plugins/@nocobase/plugin-verification/dist/client-v2/"}b.p=e}(),!function(){b.r(S),b.d(S,{VerificationManager:function(){return r.X},default:function(){return t.A},SMS_OTP_VERIFICATION_TYPE:function(){return e.Fz},PROVIDER_TYPE_SMS_ALIYUN:function(){return e.ob},useT:function(){return n.kj},VerifierSelect:function(){return v},VerificationCode:function(){return d.n},NAMESPACE:function(){return n.CU},SMSOTPProviderManager:function(){return o.X},PROVIDER_TYPE_SMS_TENCENT:function(){return e.Zs},PluginVerificationClientV2:function(){return t.I},useVerificationTranslation:function(){return n.Au}});var e=b(624),t=b(373),n=b(488),r=b(319),o=b(261),i=b(485),a=b(694),u=b(59),c=b(155),l=b.n(c),s=b(442);function f(e,t){(null==t||t>e.length)&&(t=e.length);for(var n=0,r=Array(t);n<t;n++)r[n]=e[n];return r}function p(e,t,n,r,o,i,a){try{var u=e[i](a),c=u.value}catch(e){n(e);return}u.done?t(c):Promise.resolve(c).then(r,o)}function v(e){var t,r=e.scene,o=e.value,v=e.onChange,d=e.multiple,b=e.placeholder,y=e.disabled,h=e.style,m=e.hideHint,g=(0,n.Au)().t,w=(0,n.kj)(),S=(0,a.useFlowContext)(),O=(0,c.useMemo)(function(){return"@nocobase/plugin-verification:verifiers:listByScene:".concat(r)},[r]),E=function(e){if(Array.isArray(e))return e}(t=(0,c.useState)([]))||function(e){var t,n,r=null==e?null:"u">typeof Symbol&&e[Symbol.iterator]||e["@@iterator"];if(null!=r){var o=[],i=!0,a=!1;try{for(r=r.call(e);!(i=(t=r.next()).done)&&(o.push(t.value),2!==o.length);i=!0);}catch(e){a=!0,n=e}finally{try{i||null==r.return||r.return()}finally{if(a)throw n}}return o}}(t)||function(e){if(e){if("string"==typeof e)return f(e,2);var t=Object.prototype.toString.call(e).slice(8,-1);if("Object"===t&&e.constructor&&(t=e.constructor.name),"Map"===t||"Set"===t)return Array.from(t);if("Arguments"===t||/^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(t))return f(e,2)}}(t)||function(){throw TypeError("Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.")}(),x=E[0],k=E[1];return l().createElement(l().Fragment,null,l().createElement(i.RemoteSelect,{request:function(){var e;return(e=function(){var e,t,n;return function(e,t){var n,r,o,i={label:0,sent:function(){if(1&o[0])throw o[1];return o[1]},trys:[],ops:[]},a=Object.create(("function"==typeof Iterator?Iterator:Object).prototype),u=Object.defineProperty;return u(a,"next",{value:c(0)}),u(a,"throw",{value:c(1)}),u(a,"return",{value:c(2)}),"function"==typeof Symbol&&u(a,Symbol.iterator,{value:function(){return this}}),a;function c(u){return function(c){var l=[u,c];if(n)throw TypeError("Generator is already executing.");for(;a&&(a=0,l[0]&&(i=0)),i;)try{if(n=1,r&&(o=2&l[0]?r.return:l[0]?r.throw||((o=r.return)&&o.call(r),0):r.next)&&!(o=o.call(r,l[1])).done)return o;switch(r=0,o&&(l=[2&l[0],o.value]),l[0]){case 0:case 1:o=l;break;case 4:return i.label++,{value:l[1],done:!1};case 5:i.label++,r=l[1],l=[0];continue;case 7:l=i.ops.pop(),i.trys.pop();continue;default:if(!(o=(o=i.trys).length>0&&o[o.length-1])&&(6===l[0]||2===l[0])){i=0;continue}if(3===l[0]&&(!o||l[1]>o[0]&&l[1]<o[3])){i.label=l[1];break}if(6===l[0]&&i.label<o[1]){i.label=o[1],o=l;break}if(o&&i.label<o[2]){i.label=o[2],i.ops.push(l);break}o[2]&&i.ops.pop(),i.trys.pop();continue}l=t.call(e,i)}catch(e){l=[6,e],r=0}finally{n=o=0}if(5&l[0])throw l[1];return{value:l[0]?l[1]:void 0,done:!0}}}}(this,function(o){switch(o.label){case 0:return[4,S.api.resource("verifiers").listByScene({scene:r})];case 1:return[2,null!=(e=null==(n=o.sent())||null==(t=n.data)?void 0:t.data)?e:{}]}})},function(){var t=this,n=arguments;return new Promise(function(r,o){var i=e.apply(t,n);function a(e){p(i,r,o,a,u,"next",e)}function u(e){p(i,r,o,a,u,"throw",e)}a(void 0)})})()},selectItems:function(e){return(null==e?void 0:e.verifiers)||[]},onLoaded:function(e,t){k(((null==t?void 0:t.availableTypes)||[]).map(function(e){return w(e.title||e.name)}))},cacheKey:O,refreshDeps:[r],mapOptions:function(e){return{label:w(e.title||e.name),value:e.name}},mode:d?"multiple":void 0,value:o,onChange:v,placeholder:b,disabled:y,style:h}),m?null:l().createElement(u.Typography.Text,{type:"secondary"},g("The following types of verifiers are available:")," ",x.join(", "),". ",g("Go to")," ",l().createElement(s.Link,{to:"/admin/settings/verification"},g("create verifiers"))))}var d=b(17)}(),S}()});
@@ -0,0 +1,17 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ export declare const NAMESPACE = "verification";
10
+ export declare function useVerificationTranslation(): import("react-i18next").UseTranslationResponse<("verification" | "client")[], undefined>;
11
+ /**
12
+ * v2-style translator. Routes through `flowEngine.context.t`, which natively
13
+ * expands legacy Formily Schema templates (e.g. `{{t("Phone")}}`) — useful
14
+ * when the value comes from a server payload that still contains the
15
+ * `{{t("…")}}` wrapper.
16
+ */
17
+ export declare function useT(): (key: string) => string;
@@ -0,0 +1,35 @@
1
+ /**
2
+ * This file is part of the NocoBase (R) project.
3
+ * Copyright (c) 2020-2024 NocoBase Co., Ltd.
4
+ * Authors: NocoBase Team.
5
+ *
6
+ * This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
7
+ * For more information, please refer to: https://www.nocobase.com/agreement.
8
+ */
9
+ import type { ComponentType } from 'react';
10
+ type LoaderOf<P = Record<string, never>> = () => Promise<{
11
+ default: ComponentType<P>;
12
+ }>;
13
+ export type SMSOTPProviderOptions = {
14
+ components: {
15
+ /**
16
+ * Loader for the provider-specific admin-settings form. Stored as an
17
+ * async `() => import(...)` so third-party SMS providers contributed
18
+ * via `registerProvider()` come in as their own webpack chunk,
19
+ * fetched only when the corresponding provider is picked in the
20
+ * verifier configuration drawer.
21
+ */
22
+ AdminSettingsFormLoader: LoaderOf;
23
+ };
24
+ };
25
+ /**
26
+ * Registry of SMS OTP providers (Aliyun, Tencent, …). Each entry only
27
+ * needs to contribute its admin settings form — the runtime side is
28
+ * handled server-side.
29
+ */
30
+ export declare class SMSOTPProviderManager {
31
+ providers: any;
32
+ registerProvider(type: string, options: SMSOTPProviderOptions): void;
33
+ getProvider(type: string): any;
34
+ }
35
+ export {};