@nocobase/plugin-verification 2.1.0-beta.9 → 2.1.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.
- package/client-v2.d.ts +2 -0
- package/client-v2.js +1 -0
- package/dist/client/152.480ad14fee48be71.js +10 -0
- package/dist/client/478.bb62159e1d524faa.js +10 -0
- package/dist/client/index.js +1 -1
- package/dist/client-v2/190.596918843af85477.js +10 -0
- package/dist/client-v2/290.a651bc7c42fc98bc.js +10 -0
- package/dist/client-v2/548.eb3ed70d62d68d60.js +10 -0
- package/dist/client-v2/81.b8599d97bf4ca2a8.js +10 -0
- package/dist/client-v2/934.a3c0fa32883528e4.js +10 -0
- package/dist/client-v2/973.8a85e3793371482b.js +10 -0
- package/dist/client-v2/components/VerificationCode.d.ts +49 -0
- package/dist/client-v2/components/VerifierSelect.d.ts +45 -0
- package/dist/client-v2/index.d.ts +19 -0
- package/dist/client-v2/index.js +10 -0
- package/dist/client-v2/locale.d.ts +17 -0
- package/dist/client-v2/otp-sms-provider-manager.d.ts +35 -0
- package/dist/client-v2/otp-verification/sms/AdminSettingsForm.d.ts +21 -0
- package/dist/client-v2/otp-verification/sms/BindForm.d.ts +18 -0
- package/dist/client-v2/otp-verification/sms/VerificationForm.d.ts +18 -0
- package/dist/client-v2/otp-verification/sms/index.d.ts +25 -0
- package/dist/client-v2/otp-verification/sms/providers/AliyunSettings.d.ts +17 -0
- package/dist/client-v2/otp-verification/sms/providers/TencentSettings.d.ts +17 -0
- package/dist/client-v2/pages/VerifiersPage.d.ts +61 -0
- package/dist/client-v2/plugin.d.ts +25 -0
- package/dist/client-v2/user-center/MyVerifiers.d.ts +19 -0
- package/dist/client-v2/user-center/VerificationUserCenterItemModel.d.ts +29 -0
- package/dist/client-v2/verification-manager.d.ts +49 -0
- package/dist/externalVersion.js +10 -7
- package/dist/node_modules/@alicloud/dysmsapi20170525/dist/client.js +2 -2
- package/dist/node_modules/@alicloud/{openapi-client → dysmsapi20170525}/node_modules/@alicloud/openapi-util/dist/client.js +4 -28
- package/dist/node_modules/@alicloud/{openapi-client → dysmsapi20170525}/node_modules/@alicloud/openapi-util/package.json +1 -1
- package/dist/node_modules/@alicloud/{openapi-client → dysmsapi20170525}/node_modules/@alicloud/openapi-util/src/client.ts +5 -25
- package/dist/node_modules/@alicloud/dysmsapi20170525/package.json +1 -1
- package/dist/node_modules/@alicloud/openapi-client/dist/client.js +2 -2
- package/dist/node_modules/@alicloud/openapi-client/package.json +1 -1
- package/dist/node_modules/@alicloud/tea-util/dist/client.js +1 -1
- package/dist/node_modules/@alicloud/tea-util/package.json +1 -1
- package/dist/node_modules/tencentcloud-sdk-nodejs-sms/package.json +1 -1
- package/dist/node_modules/tencentcloud-sdk-nodejs-sms/tencentcloud/index.js +5 -5
- package/dist/server/collections/otp-records.js +1 -0
- package/dist/server/collections/users-verifiers.js +1 -0
- package/dist/server/collections/verifiers.js +2 -1
- package/package.json +4 -2
- package/dist/client/0c72f307d843dc6a.js +0 -10
- package/dist/client/20e6e5fa4c397f95.js +0 -10
- /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
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}))}}]);
|
package/dist/client/index.js
CHANGED
|
@@ -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 {};
|