This is an automated email from the ASF dual-hosted git repository.

iluo pushed a commit to branch 2.7.x
in repository https://gitbox.apache.org/repos/asf/dubbo-spi-extensions.git

commit 7653d0cdd423722e46784be21ca6da4b4fffa7c1
Author: qq213539 <[email protected]>
AuthorDate: Mon Nov 23 10:40:35 2020 +0800

    当远程调用失败时,移除缓存中的Reference. 更新前端打包
---
 .../dubbo/apidocs/utils/DubboGenericUtil.java      | 44 ++++++++++++++++++++--
 .../src/main/resources/static/css/index.css        |  2 +-
 .../src/main/resources/static/js/index.js          | 28 +++++++-------
 3 files changed, 56 insertions(+), 18 deletions(-)

diff --git 
a/dubbo-api-docs/dubbo-api-docs-ui-server/src/main/java/org/apache/dubbo/apidocs/utils/DubboGenericUtil.java
 
b/dubbo-api-docs/dubbo-api-docs-ui-server/src/main/java/org/apache/dubbo/apidocs/utils/DubboGenericUtil.java
index 1c085bc..6d98388 100644
--- 
a/dubbo-api-docs/dubbo-api-docs-ui-server/src/main/java/org/apache/dubbo/apidocs/utils/DubboGenericUtil.java
+++ 
b/dubbo-api-docs/dubbo-api-docs-ui-server/src/main/java/org/apache/dubbo/apidocs/utils/DubboGenericUtil.java
@@ -21,6 +21,8 @@ import org.apache.dubbo.config.ReferenceConfig;
 import org.apache.dubbo.config.RegistryConfig;
 import org.apache.dubbo.rpc.service.GenericService;
 
+import org.apache.commons.lang3.StringUtils;
+
 import java.util.Map;
 import java.util.concurrent.CompletableFuture;
 import java.util.concurrent.ConcurrentHashMap;
@@ -93,6 +95,16 @@ public class DubboGenericUtil {
     }
 
     /**
+     * remove cached registry information.
+     * 2020/11/20 17:36
+     * @param address Address of Registration Center
+     * @return void
+     */
+    private static void removeRegistryConfig(String address) {
+        registryConfigCache.remove(address);
+    }
+
+    /**
      * Get proxy object for dubbo service.
      * 2019/9/19 17:43
      * @param: address  address Address of Registration Center
@@ -120,6 +132,18 @@ public class DubboGenericUtil {
     }
 
     /**
+     * remove cached proxy object.
+     * 2020/11/20 17:38
+     * @param address
+     * @param interfaceName
+     * @return void
+     */
+    private static void removeReferenceConfig(String address, String 
interfaceName) {
+        removeRegistryConfig(address);
+        referenceCache.remove(address + "/" + interfaceName);
+    }
+
+    /**
      * Call duboo provider and return {@link CompletableFuture}.
      * 2020/3/1 14:55
      * @param: address
@@ -139,12 +163,18 @@ public class DubboGenericUtil {
         if (null != reference) {
             GenericService genericService = reference.get();
             if (null != genericService) {
-                if(async){
+                if (async) {
                     future = genericService.$invokeAsync(methodName, 
paramTypes, paramValues);
                 } else {
                     future = CompletableFuture.supplyAsync(() -> 
genericService.$invoke(methodName, paramTypes, paramValues), executor);
                 }
             }
+            future.exceptionally(ex -> {
+                if (StringUtils.contains(ex.toString(), "Failed to invoke 
remote method")) {
+                    removeReferenceConfig(address, interfaceName);
+                }
+                return ex;
+            });
         }
         return future;
     }
@@ -165,8 +195,16 @@ public class DubboGenericUtil {
         ReferenceConfig<GenericService> reference = 
getReferenceConfig(address, interfaceName);
         if (null != reference) {
             GenericService genericService = reference.get();
-            if (null != genericService) {
-                return genericService.$invoke(methodName, paramTypes, 
paramValues);
+            try {
+                if (null != genericService) {
+                    return genericService.$invoke(methodName, paramTypes, 
paramValues);
+                }
+            } catch (Exception ex) {
+                if (StringUtils.contains(ex.toString(), "Failed to invoke 
remote method")) {
+                    removeReferenceConfig(address, interfaceName);
+                } else {
+                    throw ex;
+                }
             }
         }
         return null;
diff --git 
a/dubbo-api-docs/dubbo-api-docs-ui-server/src/main/resources/static/css/index.css
 
b/dubbo-api-docs/dubbo-api-docs-ui-server/src/main/resources/static/css/index.css
index 6642125..88e0239 100644
--- 
a/dubbo-api-docs/dubbo-api-docs-ui-server/src/main/resources/static/css/index.css
+++ 
b/dubbo-api-docs/dubbo-api-docs-ui-server/src/main/resources/static/css/index.css
@@ -1 +1 @@
-.next-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;margin:-1px}/*!
 normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css 
*/html{line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em
 0}figcaption,figure,main{display:block}figure{margin:1em 
40px}hr{-webkit-box-sizing:content-box;box-si [...]
\ No newline at end of file
+.next-sr-only{position:absolute;width:1px;height:1px;padding:0;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border:0;margin:-1px}/*!
 normalize.css v7.0.0 | MIT License | github.com/necolas/normalize.css 
*/html{line-height:1.15;-ms-text-size-adjust:100%;-webkit-text-size-adjust:100%}body{margin:0}article,aside,footer,header,nav,section{display:block}h1{font-size:2em;margin:.67em
 0}figcaption,figure,main{display:block}figure{margin:1em 
40px}hr{-webkit-box-sizing:content-box;box-si [...]
\ No newline at end of file
diff --git 
a/dubbo-api-docs/dubbo-api-docs-ui-server/src/main/resources/static/js/index.js 
b/dubbo-api-docs/dubbo-api-docs-ui-server/src/main/resources/static/js/index.js
index 496947b..6120326 100644
--- 
a/dubbo-api-docs/dubbo-api-docs-ui-server/src/main/resources/static/js/index.js
+++ 
b/dubbo-api-docs/dubbo-api-docs-ui-server/src/main/resources/static/js/index.js
@@ -1,9 +1,9 @@
-!function(e){var t={};function n(r){if(t[r])return t[r].exports;var 
o=t[r]={i:r,l:!1,exports:{}};return 
e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof
 
Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return
 e;if(4&t&&"object"==typ [...]
+!function(e){var t={};function n(r){if(t[r])return t[r].exports;var 
o=t[r]={i:r,l:!1,exports:{}};return 
e[r].call(o.exports,o,o.exports,n),o.l=!0,o.exports}n.m=e,n.c=t,n.d=function(e,t,r){n.o(e,t)||Object.defineProperty(e,t,{enumerable:!0,get:r})},n.r=function(e){"undefined"!=typeof
 
Symbol&&Symbol.toStringTag&&Object.defineProperty(e,Symbol.toStringTag,{value:"Module"}),Object.defineProperty(e,"__esModule",{value:!0})},n.t=function(e,t){if(1&t&&(e=n(e)),8&t)return
 e;if(4&t&&"object"==typ [...]
 /*!
   Copyright (c) 2017 Jed Watson.
   Licensed under the MIT License (MIT), see
   http://jedwatson.github.io/classnames
-*/!function(){"use strict";var n={}.hasOwnProperty;function a(){for(var 
e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof 
r;if("string"===o||"number"===o)e.push(r);else 
if(Array.isArray(r)&&r.length){var i=a.apply(null,r);i&&e.push(i)}else 
if("object"===o)for(var s in r)n.call(r,s)&&r[s]&&e.push(s)}}return e.join(" 
")}e.exports?(a.default=a,e.exports=a):void 0===(o=function(){return 
a}.apply(t,r=[]))||(e.exports=o)}()},function(e,t,n){"use 
strict";t.__esModule=!0;var [...]
+*/!function(){"use strict";var n={}.hasOwnProperty;function a(){for(var 
e=[],t=0;t<arguments.length;t++){var r=arguments[t];if(r){var o=typeof 
r;if("string"===o||"number"===o)e.push(r);else 
if(Array.isArray(r)&&r.length){var i=a.apply(null,r);i&&e.push(i)}else 
if("object"===o)for(var s in r)n.call(r,s)&&r[s]&&e.push(s)}}return e.join(" 
")}e.exports?(a.default=a,e.exports=a):void 0===(o=function(){return 
a}.apply(t,r=[]))||(e.exports=o)}()},function(e,t,n){"use 
strict";t.__esModule=!0,t.d [...]
 /*! 
*****************************************************************************
 Copyright (c) Microsoft Corporation.
 
@@ -18,7 +18,7 @@ LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF 
CONTRACT, NEGLIGENCE OR
 OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
 PERFORMANCE OF THIS SOFTWARE.
 ***************************************************************************** 
*/
-var r=function(e,t){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof 
Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in 
t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};function o(e,t){function 
n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new
 n)}var a=function(){return(a=Object.assign||function e(t){for(var 
n,r=1,o=arguments.length;r<o;r++)for(var a in 
n=arguments[r])Object.prototype.hasOwnProperty.call(n,a)&&(t[a]=n[a]);retu [...]
+var r=function(e,t){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof 
Array&&function(e,t){e.__proto__=t}||function(e,t){for(var n in 
t)t.hasOwnProperty(n)&&(e[n]=t[n])})(e,t)};function o(e,t){function 
n(){this.constructor=e}r(e,t),e.prototype=null===t?Object.create(t):(n.prototype=t.prototype,new
 n)}var a=function(){return(a=Object.assign||function e(t){for(var 
n,r=1,o=arguments.length;r<o;r++)for(var a in 
n=arguments[r])Object.prototype.hasOwnProperty.call(n,a)&&(t[a]=n[a]);retu [...]
 /*!
  * jQuery JavaScript Library v3.5.1
  * https://jquery.com/
@@ -42,27 +42,27 @@ var 
r=function(e,t){return(r=Object.setPrototypeOf||{__proto__:[]}instanceof Arr
  *
  * Date: 2020-03-14
  */
-function(e){var t,n,r,o,a,i,s,u,l,c,f,p,d,h,v,m,y,g,b,w="sizzle"+1*new 
Date,x=e.document,E=0,_=0,O=ue(),S=ue(),C=ue(),k=ue(),P=function(e,t){return 
e===t&&(f=!0),0},T={}.hasOwnProperty,j=[],A=j.pop,N=j.push,M=j.push,D=j.slice,R=function(e,t){for(var
 n=0,r=e.length;n<r;n++)if(e[n]===t)return 
n;return-1},L="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",I="[\\x20\\t\\r\\n\\f]",F="(?:\\\\[\\da-fA-F]{1,6}"+I+"?|\\\\
 [...]
+function(e){var t,n,r,o,a,i,s,u,l,c,f,p,d,h,v,m,y,g,b,w="sizzle"+1*new 
Date,x=e.document,E=0,_=0,O=ue(),S=ue(),C=ue(),k=ue(),P=function(e,t){return 
e===t&&(f=!0),0},T={}.hasOwnProperty,j=[],A=j.pop,N=j.push,M=j.push,D=j.slice,R=function(e,t){for(var
 n=0,r=e.length;n<r;n++)if(e[n]===t)return 
n;return-1},L="checked|selected|async|autofocus|autoplay|controls|defer|disabled|hidden|ismap|loop|multiple|open|readonly|required|scoped",I="[\\x20\\t\\r\\n\\f]",F="(?:\\\\[\\da-fA-F]{1,6}"+I+"?|\\\\
 [...]
 /*
 object-assign
 (c) Sindre Sorhus
 @license MIT
-*/var 
r=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;function
 i(e){if(null==e)throw new TypeError("Object.assign cannot be called with null 
or undefined");return Object(e)}function s(){try{if(!Object.assign)return!1;var 
e=new 
String("abc"),t;if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var
 
n={},r=0;r<10;r++)n["_"+String.fromCharCode(r)]=r;if("0123456789"!==Object.getOwnPropertyNames(n).map((function(e){return
 n [...]
+*/var 
r=Object.getOwnPropertySymbols,o=Object.prototype.hasOwnProperty,a=Object.prototype.propertyIsEnumerable;function
 i(e){if(null==e)throw new TypeError("Object.assign cannot be called with null 
or undefined");return Object(e)}function s(){try{if(!Object.assign)return!1;var 
e=new 
String("abc"),t;if(e[5]="de","5"===Object.getOwnPropertyNames(e)[0])return!1;for(var
 
n={},r=0;r<10;r++)n["_"+String.fromCharCode(r)]=r;if("0123456789"!==Object.getOwnPropertyNames(n).map((function(e){return
 n [...]
 /*!
  * cookie
  * Copyright(c) 2012-2014 Roman Shtylman
  * Copyright(c) 2015 Douglas Christopher Wilson
  * MIT Licensed
- */t.parse=s,t.serialize=u;var r=decodeURIComponent,o=encodeURIComponent,a=/; 
*/,i=/^[\u0009\u0020-\u007e\u0080-\u00ff]+$/;function 
s(e,t){if("string"!=typeof e)throw new TypeError("argument str must be a 
string");for(var 
n={},o=t||{},i=e.split(a),s=o.decode||r,u=0;u<i.length;u++){var 
c=i[u],f=c.indexOf("=");if(!(f<0)){var 
p=c.substr(0,f).trim(),d=c.substr(++f,c.length).trim();'"'==d[0]&&(d=d.slice(1,-1)),null==n[p]&&(n[p]=l(d,s))}}return
 n}function u(e,t,n){var r=n||{},a=r.encode||o;if( [...]
+ */t.parse=s,t.serialize=u;var r=decodeURIComponent,o=encodeURIComponent,a=/; 
*/,i=/^[\u0009\u0020-\u007e\u0080-\u00ff]+$/;function 
s(e,t){if("string"!=typeof e)throw new TypeError("argument str must be a 
string");for(var 
n={},o=t||{},i=e.split(a),s=o.decode||r,u=0;u<i.length;u++){var 
c=i[u],f=c.indexOf("=");if(!(f<0)){var 
p=c.substr(0,f).trim(),d=c.substr(++f,c.length).trim();'"'==d[0]&&(d=d.slice(1,-1)),null==n[p]&&(n[p]=l(d,s))}}return
 n}function u(e,t,n){var r=n||{},a=r.encode||o;if( [...]
 //! version : 2.29.1
 //! authors : Tim Wood, Iskren Chernev, Moment.js contributors
 //! license : MIT
 //! momentjs.com
-r=this,o=function(){"use strict";var t,r;function o(){return 
t.apply(null,arguments)}function a(e){t=e}function i(e){return e instanceof 
Array||"[object Array]"===Object.prototype.toString.call(e)}function 
s(e){return null!=e&&"[object 
Object]"===Object.prototype.toString.call(e)}function u(e,t){return 
Object.prototype.hasOwnProperty.call(e,t)}function 
l(e){if(Object.getOwnPropertyNames)return 
0===Object.getOwnPropertyNames(e).length;var t;for(t in 
e)if(u(e,t))return!1;return!0}function  [...]
+r=this,o=function(){"use strict";var t,r;function o(){return 
t.apply(null,arguments)}function a(e){t=e}function i(e){return e instanceof 
Array||"[object Array]"===Object.prototype.toString.call(e)}function 
s(e){return null!=e&&"[object 
Object]"===Object.prototype.toString.call(e)}function u(e,t){return 
Object.prototype.hasOwnProperty.call(e,t)}function 
l(e){if(Object.getOwnPropertyNames)return 
0===Object.getOwnPropertyNames(e).length;var t;for(t in 
e)if(u(e,t))return!1;return!0}function  [...]
 //! moment.js
-o.version="2.29.1",a($n),o.fn=la,o.min=Qn,o.max=er,o.now=tr,o.utc=v,o.unix=ca,o.months=ya,o.isDate=p,o.locale=vn,o.invalid=b,o.duration=Pr,o.isMoment=O,o.weekdays=ba,o.parseZone=fa,o.localeData=gn,o.isDuration=sr,o.monthsShort=ga,o.weekdaysMin=xa,o.defineLocale=mn,o.updateLocale=yn,o.locales=bn,o.weekdaysShort=wa,o.normalizeUnits=oe,o.relativeTimeRounding=oi,o.relativeTimeThreshold=ai,o.calendarFormat=Ur,o.prototype=la,o.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS
 [...]
+o.version="2.29.1",a($n),o.fn=la,o.min=Qn,o.max=er,o.now=tr,o.utc=v,o.unix=ca,o.months=ya,o.isDate=p,o.locale=vn,o.invalid=b,o.duration=Pr,o.isMoment=O,o.weekdays=ba,o.parseZone=fa,o.localeData=gn,o.isDuration=sr,o.monthsShort=ga,o.weekdaysMin=xa,o.defineLocale=mn,o.updateLocale=yn,o.locales=bn,o.weekdaysShort=wa,o.normalizeUnits=oe,o.relativeTimeRounding=oi,o.relativeTimeThreshold=ai,o.calendarFormat=Ur,o.prototype=la,o.HTML5_FMT={DATETIME_LOCAL:"YYYY-MM-DDTHH:mm",DATETIME_LOCAL_SECONDS
 [...]
 //! moment.js locale configuration
-var t;return 
e.defineLocale("zh-cn",{months:"\u4e00\u6708_\u4e8c\u6708_\u4e09\u6708_\u56db\u6708_\u4e94\u6708_\u516d\u6708_\u4e03\u6708_\u516b\u6708_\u4e5d\u6708_\u5341\u6708_\u5341\u4e00\u6708_\u5341\u4e8c\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),weekdays:"\u661f\u671f\u65e5_\u661f\u671f\u4e00_\u661f\u671f\u4e8c_\u661f\u671f\u4e09_\u661f\u671f\u56db_\u661f\u671f\u4e94_\u661f\u671f\u516d"
 [...]
+var t;return 
e.defineLocale("zh-cn",{months:"\u4e00\u6708_\u4e8c\u6708_\u4e09\u6708_\u56db\u6708_\u4e94\u6708_\u516d\u6708_\u4e03\u6708_\u516b\u6708_\u4e5d\u6708_\u5341\u6708_\u5341\u4e00\u6708_\u5341\u4e8c\u6708".split("_"),monthsShort:"1\u6708_2\u6708_3\u6708_4\u6708_5\u6708_6\u6708_7\u6708_8\u6708_9\u6708_10\u6708_11\u6708_12\u6708".split("_"),weekdays:"\u661f\u671f\u65e5_\u661f\u671f\u4e00_\u661f\u671f\u4e8c_\u661f\u671f\u4e09_\u661f\u671f\u56db_\u661f\u671f\u4e94_\u661f\u671f\u516d"
 [...]
 /** @license React v16.14.0
  * react.production.min.js
  *
@@ -70,7 +70,7 @@ var t;return 
e.defineLocale("zh-cn",{months:"\u4e00\u6708_\u4e8c\u6708_\u4e09\u6
  *
  * This source code is licensed under the MIT license found in the
  * LICENSE file in the root directory of this source tree.
- */var r=n(189),o="function"==typeof 
Symbol&&Symbol.for,a=o?Symbol.for("react.element"):60103,i=o?Symbol.for("react.portal"):60106,s=o?Symbol.for("react.fragment"):60107,u=o?Symbol.for("react.strict_mode"):60108,l=o?Symbol.for("react.profiler"):60114,c=o?Symbol.for("react.provider"):60109,f=o?Symbol.for("react.context"):60110,p=o?Symbol.for("react.forward_ref"):60112,d=o?Symbol.for("react.suspense"):60113,h=o?Symbol.for("react.memo"):60115,v=o?Symbol.for("react.lazy"):60116,m="function"=
 [...]
+ */var r=n(188),o="function"==typeof 
Symbol&&Symbol.for,a=o?Symbol.for("react.element"):60103,i=o?Symbol.for("react.portal"):60106,s=o?Symbol.for("react.fragment"):60107,u=o?Symbol.for("react.strict_mode"):60108,l=o?Symbol.for("react.profiler"):60114,c=o?Symbol.for("react.provider"):60109,f=o?Symbol.for("react.context"):60110,p=o?Symbol.for("react.forward_ref"):60112,d=o?Symbol.for("react.suspense"):60113,h=o?Symbol.for("react.memo"):60115,v=o?Symbol.for("react.lazy"):60116,m="function"=
 [...]
 /** @license React v16.14.0
  * react-dom.production.min.js
  *
@@ -78,7 +78,7 @@ var t;return 
e.defineLocale("zh-cn",{months:"\u4e00\u6708_\u4e8c\u6708_\u4e09\u6
  *
  * This source code is licensed under the MIT license found in the
  * LICENSE file in the root directory of this source tree.
- */var r=n(1),o=n(189),a=n(562);function i(e){for(var 
t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified
 React error #"+e+"; visit "+t+" for the full message or use the non-minified 
dev environment for full errors and additional helpful warnings."}if(!r)throw 
Error(i(227));function s(e,t,n,r,o,a,i,s,u){var 
l=Array.prototype.slice.call(arguments,3);try{t.apply(n,l)}catch(e){this.onError(e)}
 [...]
+ */var r=n(1),o=n(188),a=n(562);function i(e){for(var 
t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified
 React error #"+e+"; visit "+t+" for the full message or use the non-minified 
dev environment for full errors and additional helpful warnings."}if(!r)throw 
Error(i(227));function s(e,t,n,r,o,a,i,s,u){var 
l=Array.prototype.slice.call(arguments,3);try{t.apply(n,l)}catch(e){this.onError(e)}
 [...]
 /** @license React v0.19.1
  * scheduler.production.min.js
  *
@@ -94,14 +94,14 @@ var t;return 
e.defineLocale("zh-cn",{months:"\u4e00\u6708_\u4e8c\u6708_\u4e09\u6
  *
  * This source code is licensed under the MIT license found in the
  * LICENSE file in the root directory of this source tree.
- */var r=n(189),o=n(1);function a(e){for(var 
t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified
 React error #"+e+"; visit "+t+" for the full message or use the non-minified 
dev environment for full errors and additional helpful warnings."}var 
i="function"==typeof 
Symbol&&Symbol.for,s=i?Symbol.for("react.portal"):60106,u=i?Symbol.for("react.fragment"):60107,l=i?Symbol.for("react.strict_mode
 [...]
+ */var r=n(188),o=n(1);function a(e){for(var 
t="https://reactjs.org/docs/error-decoder.html?invariant="+e,n=1;n<arguments.length;n++)t+="&args[]="+encodeURIComponent(arguments[n]);return"Minified
 React error #"+e+"; visit "+t+" for the full message or use the non-minified 
dev environment for full errors and additional helpful warnings."}var 
i="function"==typeof 
Symbol&&Symbol.for,s=i?Symbol.for("react.portal"):60106,u=i?Symbol.for("react.fragment"):60107,l=i?Symbol.for("react.strict_mode
 [...]
 /*!
  * escape-html
  * Copyright(c) 2012-2013 TJ Holowaychuk
  * Copyright(c) 2015 Andreas Lubbe
  * Copyright(c) 2015 Tiancheng "Timothy" Gu
  * MIT Licensed
- */var r=/["'&<>]/;function o(e){var t=""+e,n=r.exec(t),o;if(!n)return t;var 
a="",i=0,s=0;for(i=n.index;i<t.length;i++){switch(t.charCodeAt(i)){case 
34:o="&quot;";break;case 38:o="&amp;";break;case 39:o="&#39;";break;case 
60:o="&lt;";break;case 
62:o="&gt;";break;default:continue}s!==i&&(a+=t.substring(s,i)),s=i+1,a+=o}return
 s!==i?a+t.substring(s,i):a}e.exports=o},function(e,t,n){"use 
strict";t.decode=t.parse=n(597),t.encode=t.stringify=n(598)},function(e,t,n){"use
 strict";function r(e,t [...]
+ */var r=/["'&<>]/;function o(e){var t=""+e,n=r.exec(t),o;if(!n)return t;var 
a="",i=0,s=0;for(i=n.index;i<t.length;i++){switch(t.charCodeAt(i)){case 
34:o="&quot;";break;case 38:o="&amp;";break;case 39:o="&#39;";break;case 
60:o="&lt;";break;case 
62:o="&gt;";break;default:continue}s!==i&&(a+=t.substring(s,i)),s=i+1,a+=o}return
 s!==i?a+t.substring(s,i):a}e.exports=o},function(e,t,n){"use 
strict";t.decode=t.parse=n(598),t.encode=t.stringify=n(599)},function(e,t,n){"use
 strict";function r(e,t [...]
 /** @license React v16.13.1
  * react-is.production.min.js
  *
@@ -109,4 +109,4 @@ var t;return 
e.defineLocale("zh-cn",{months:"\u4e00\u6708_\u4e8c\u6708_\u4e09\u6
  *
  * This source code is licensed under the MIT license found in the
  * LICENSE file in the root directory of this source tree.
- */var r="function"==typeof 
Symbol&&Symbol.for,o=r?Symbol.for("react.element"):60103,a=r?Symbol.for("react.portal"):60106,i=r?Symbol.for("react.fragment"):60107,s=r?Symbol.for("react.strict_mode"):60108,u=r?Symbol.for("react.profiler"):60114,l=r?Symbol.for("react.provider"):60109,c=r?Symbol.for("react.context"):60110,f=r?Symbol.for("react.async_mode"):60111,p=r?Symbol.for("react.concurrent_mode"):60111,d=r?Symbol.for("react.forward_ref"):60112,h=r?Symbol.for("react.suspense"):60113,v=r?S
 [...]
\ No newline at end of file
+ */var r="function"==typeof 
Symbol&&Symbol.for,o=r?Symbol.for("react.element"):60103,a=r?Symbol.for("react.portal"):60106,i=r?Symbol.for("react.fragment"):60107,s=r?Symbol.for("react.strict_mode"):60108,u=r?Symbol.for("react.profiler"):60114,l=r?Symbol.for("react.provider"):60109,c=r?Symbol.for("react.context"):60110,f=r?Symbol.for("react.async_mode"):60111,p=r?Symbol.for("react.concurrent_mode"):60111,d=r?Symbol.for("react.forward_ref"):60112,h=r?Symbol.for("react.suspense"):60113,v=r?S
 [...]
\ No newline at end of file

Reply via email to