liyu-pc-base 1.0.455 → 1.0.457
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.
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"remotePages-BF6j5Dad.js","names":["toPrimitive","_defineProperty","toPropertyKey","h","createTypes","noop","warning","LoadingOutlined","generate","canUseDom","contains","APPEND_ORDER","MARK_KEY","containerCache","getMark","getContainer","getOrder","findStyles","injectCSS","findExistNode","syncRealContainer","updateCSS","_objectSpread","_defineProperty","generateColor","_excluded","_objectWithoutProperties","_objectWithoutPropertiesLoose","_objectSpread","_defineProperty","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","_arrayLikeToArray","VueIcon","_objectSpread","_defineProperty","_createVNode","VueIcon","_objectSpread","_defineProperty","LoadingOutlined","_createVNode","AntdIcon","LoadingOutlinedSvg","CloseCircleFilled","_objectSpread","_defineProperty","_createVNode","AntdIcon","CloseCircleFilledSvg","CheckCircleFilled","_objectSpread","_defineProperty","_createVNode","AntdIcon","CheckCircleFilledSvg","ExclamationCircleFilled","_objectSpread","_defineProperty","_createVNode","AntdIcon","ExclamationCircleFilledSvg","CacheEntity","useHMR","getContainer","hash","useGlobalCache","hash","linter","normalizeStyle","contentQuotesLinter","hashedAnimationLinter","unitless","hash","version","getAlphaColor","generate","getAlphaColor","genFontSizes","generate","__rest","mergeToken","defaultDerivative","defaultSeedToken","version","locale","locale","CalendarLocale","TimePickerLocale","enUS","defaultLocaleData","LocaleReceiver","Empty","_createVNode","_createVNode","mergeToken","__rest","useConfigInject","useStyle","DefaultEmptyImg","_createVNode","LocaleReceiver","_objectSpread","SimpleEmptyImg","useConfigInject","_createVNode","Empty","getMotion","_createVNode","CloseOutlined","_objectSpread","_defineProperty","CloseOutlined","_createVNode","AntdIcon","CloseOutlinedSvg","CheckCircleOutlined","_objectSpread","_defineProperty","_createVNode","AntdIcon","CheckCircleOutlinedSvg","ExclamationCircleOutlined","_objectSpread","_defineProperty","ExclamationCircleOutlined","_createVNode","AntdIcon","ExclamationCircleOutlinedSvg","InfoCircleOutlined","_objectSpread","_defineProperty","_createVNode","AntdIcon","InfoCircleOutlinedSvg","CloseCircleOutlined","_objectSpread","_defineProperty","CloseCircleOutlined","_createVNode","AntdIcon","CloseCircleOutlinedSvg","InfoCircleFilled","_createVNode","AntdIcon","InfoCircleFilledSvg","defaultLocale","locale","_createVNode","_objectSpread","__rest","seed","now","getUuid","Notification","_createVNode","Notice","_objectSpread","_createVNode","Notice","_objectSpread","Portal","__rest","defaultGetContainer","useNotification","_createVNode","HookNotification","Notification","Keyframes","mergeToken","TypeIcon","_createVNode","LoadingOutlined","PureContent","useStyle","Notice","_objectSpread","__rest","DEFAULT_OFFSET","DEFAULT_DURATION","Holder","useConfigInject","useStyle","getMotion","_createVNode","CloseOutlined","useVcNotification","PureContent","_objectSpread","defaultDuration","defaultTop","maxCount","rtl","typeToIcon","LoadingOutlined","notice","_createVNode","api","Keyframes","Keyframes","mergeToken","_createVNode","CloseOutlined","LoadingOutlined","typeToIcon","useConfigInject","useStyle","Notice","_objectSpread","__rest","useConfigInject","useStyle","useVcNotification","_createVNode","_objectSpread","defaultPrefixCls","_createVNode","CloseOutlined","CloseCircleOutlined","ExclamationCircleOutlined","generate","defaultRenderEmpty","defaultSeedToken","defaultLocale","_createVNode","LocaleProvider","LocaleReceiver"],"sources":["../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/objectSpread2.js","../node_modules/vue-types/dist/vue-types.m.js","../node_modules/ant-design-vue/es/_util/vue-types/index.js","../node_modules/ant-design-vue/es/_util/warning.js","../node_modules/@ant-design/icons-svg/es/asn/LoadingOutlined.js","../node_modules/@ctrl/tinycolor/dist/module/util.js","../node_modules/@ctrl/tinycolor/dist/module/conversion.js","../node_modules/@ctrl/tinycolor/dist/module/css-color-names.js","../node_modules/@ctrl/tinycolor/dist/module/format-input.js","../node_modules/@ctrl/tinycolor/dist/module/index.js","../node_modules/@ant-design/colors/dist/index.esm.js","../node_modules/@ant-design/icons-vue/es/components/Context.js","../node_modules/@ant-design/icons-vue/es/dynamicCSS.js","../node_modules/@ant-design/icons-vue/es/utils.js","../node_modules/@ant-design/icons-vue/es/components/IconBase.js","../node_modules/@ant-design/icons-vue/es/components/twoTonePrimaryColor.js","../node_modules/@ant-design/icons-vue/es/components/InsertStyle.js","../node_modules/@ant-design/icons-vue/es/components/AntdIcon.js","../node_modules/@ant-design/icons-vue/es/icons/LoadingOutlined.js","../node_modules/@ant-design/icons-svg/es/asn/CloseCircleFilled.js","../node_modules/@ant-design/icons-vue/es/icons/CloseCircleFilled.js","../node_modules/@ant-design/icons-svg/es/asn/CheckCircleFilled.js","../node_modules/@ant-design/icons-vue/es/icons/CheckCircleFilled.js","../node_modules/@ant-design/icons-svg/es/asn/ExclamationCircleFilled.js","../node_modules/@ant-design/icons-vue/es/icons/ExclamationCircleFilled.js","../node_modules/@emotion/hash/dist/emotion-hash.esm.js","../node_modules/ant-design-vue/es/_util/cssinjs/Cache.js","../node_modules/ant-design-vue/es/_util/type.js","../node_modules/ant-design-vue/es/_util/cssinjs/StyleContext.js","../node_modules/ant-design-vue/es/_util/cssinjs/hooks/useHMR.js","../node_modules/ant-design-vue/es/_util/cssinjs/hooks/useGlobalCache.js","../node_modules/ant-design-vue/es/_util/canUseDom.js","../node_modules/ant-design-vue/es/vc-util/Dom/contains.js","../node_modules/ant-design-vue/es/vc-util/Dom/dynamicCSS.js","../node_modules/ant-design-vue/es/_util/cssinjs/theme/ThemeCache.js","../node_modules/ant-design-vue/es/_util/cssinjs/theme/Theme.js","../node_modules/ant-design-vue/es/_util/cssinjs/theme/createTheme.js","../node_modules/ant-design-vue/es/_util/cssinjs/util.js","../node_modules/ant-design-vue/es/_util/cssinjs/hooks/useCacheToken.js","../node_modules/@emotion/unitless/dist/emotion-unitless.esm.js","../node_modules/stylis/src/Enum.js","../node_modules/stylis/src/Utility.js","../node_modules/stylis/src/Tokenizer.js","../node_modules/stylis/src/Parser.js","../node_modules/stylis/src/Serializer.js","../node_modules/ant-design-vue/es/_util/cssinjs/linters/utils.js","../node_modules/ant-design-vue/es/_util/cssinjs/linters/contentQuotesLinter.js","../node_modules/ant-design-vue/es/_util/cssinjs/linters/hashedAnimationLinter.js","../node_modules/ant-design-vue/es/_util/cssinjs/hooks/useStyleRegister/cacheMapUtil.js","../node_modules/ant-design-vue/es/_util/cssinjs/hooks/useStyleRegister/index.js","../node_modules/ant-design-vue/es/_util/cssinjs/Keyframes.js","../node_modules/ant-design-vue/es/version/version.js","../node_modules/ant-design-vue/es/version/index.js","../node_modules/ant-design-vue/es/theme/themes/shared/genControlHeight.js","../node_modules/ant-design-vue/es/theme/themes/shared/genSizeMapToken.js","../node_modules/ant-design-vue/es/theme/themes/seed.js","../node_modules/ant-design-vue/es/theme/themes/shared/genColorMapToken.js","../node_modules/ant-design-vue/es/theme/themes/shared/genRadius.js","../node_modules/ant-design-vue/es/theme/themes/shared/genCommonMapToken.js","../node_modules/ant-design-vue/es/theme/themes/default/colorAlgorithm.js","../node_modules/ant-design-vue/es/theme/themes/default/colors.js","../node_modules/ant-design-vue/es/theme/themes/shared/genFontSizes.js","../node_modules/ant-design-vue/es/theme/themes/shared/genFontMapToken.js","../node_modules/ant-design-vue/es/theme/themes/default/index.js","../node_modules/ant-design-vue/es/theme/util/getAlphaColor.js","../node_modules/ant-design-vue/es/theme/util/alias.js","../node_modules/ant-design-vue/es/style/index.js","../node_modules/ant-design-vue/es/config-provider/context.js","../node_modules/ant-design-vue/es/theme/util/genComponentStyleHook.js","../node_modules/ant-design-vue/es/theme/util/statistic.js","../node_modules/ant-design-vue/es/theme/internal.js","../node_modules/ant-design-vue/es/config-provider/DisabledContext.js","../node_modules/ant-design-vue/es/vc-pagination/locale/en_US.js","../node_modules/ant-design-vue/es/vc-picker/locale/en_US.js","../node_modules/ant-design-vue/es/time-picker/locale/en_US.js","../node_modules/ant-design-vue/es/date-picker/locale/en_US.js","../node_modules/ant-design-vue/es/calendar/locale/en_US.js","../node_modules/ant-design-vue/es/locale/en_US.js","../node_modules/ant-design-vue/es/locale/LocaleReceiver.js","../node_modules/ant-design-vue/es/locale-provider/LocaleReceiver.js","../node_modules/ant-design-vue/es/empty/empty.js","../node_modules/ant-design-vue/es/empty/simple.js","../node_modules/ant-design-vue/es/empty/style/index.js","../node_modules/ant-design-vue/es/empty/index.js","../node_modules/ant-design-vue/es/config-provider/renderEmpty.js","../node_modules/ant-design-vue/es/config-provider/SizeContext.js","../node_modules/ant-design-vue/es/config-provider/hooks/useConfigInject.js","../node_modules/ant-design-vue/es/vc-trigger/utils/motionUtil.js","../node_modules/ant-design-vue/es/_util/transition.js","../node_modules/ant-design-vue/es/vc-trigger/context.js","../node_modules/ant-design-vue/es/_util/Portal.js","../src/components/remotePages/configs/permission/permission-apiurl-2.ts","../src/api/permission/apiurl-manage.ts","../src/components/remotePages/configs/permission/permission-apiurl-config.ts","../src/components/remotePages/configs/permission/permission-apiurl.ts","../src/components/remotePages/configs/permission/permission-ding_appinfo.ts","../src/components/remotePages/configs/permission/permission-menu-config.ts","../src/components/remotePages/configs/permission/permission-menu.ts","../src/components/remotePages/configs/permission/permission-menu_helper.ts","../src/api/permission/user-manage.ts","../src/components/remotePages/configs/permission/permission-organization-config.ts","../src/components/remotePages/configs/permission/permission-organization.ts","../node_modules/@ant-design/icons-svg/es/asn/CloseOutlined.js","../node_modules/@ant-design/icons-vue/es/icons/CloseOutlined.js","../node_modules/@ant-design/icons-svg/es/asn/CheckCircleOutlined.js","../node_modules/@ant-design/icons-vue/es/icons/CheckCircleOutlined.js","../node_modules/@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js","../node_modules/@ant-design/icons-vue/es/icons/ExclamationCircleOutlined.js","../node_modules/@ant-design/icons-svg/es/asn/InfoCircleOutlined.js","../node_modules/@ant-design/icons-vue/es/icons/InfoCircleOutlined.js","../node_modules/@ant-design/icons-svg/es/asn/CloseCircleOutlined.js","../node_modules/@ant-design/icons-vue/es/icons/CloseCircleOutlined.js","../node_modules/@ant-design/icons-svg/es/asn/InfoCircleFilled.js","../node_modules/@ant-design/icons-vue/es/icons/InfoCircleFilled.js","../node_modules/ant-design-vue/es/modal/locale.js","../node_modules/ant-design-vue/es/locale/index.js","../node_modules/ant-design-vue/es/locale-provider/index.js","../node_modules/ant-design-vue/es/vc-notification/Notice.js","../node_modules/ant-design-vue/es/vc-notification/Notification.js","../node_modules/ant-design-vue/es/vc-notification/HookNotification.js","../node_modules/ant-design-vue/es/vc-notification/useNotification.js","../node_modules/ant-design-vue/es/vc-notification/index.js","../node_modules/ant-design-vue/es/message/style/index.js","../node_modules/ant-design-vue/es/message/PurePanel.js","../node_modules/ant-design-vue/es/message/useMessage.js","../node_modules/ant-design-vue/es/message/index.js","../node_modules/ant-design-vue/es/notification/style/placement.js","../node_modules/ant-design-vue/es/notification/style/index.js","../node_modules/ant-design-vue/es/notification/PurePanel.js","../node_modules/ant-design-vue/es/notification/util.js","../node_modules/ant-design-vue/es/notification/useNotification.js","../node_modules/ant-design-vue/es/notification/index.js","../node_modules/ant-design-vue/es/config-provider/cssVariables.js","../node_modules/ant-design-vue/es/config-provider/style/index.js","../node_modules/ant-design-vue/es/config-provider/hooks/useTheme.js","../node_modules/ant-design-vue/es/config-provider/index.js","../src/api/permission/auth-manage.ts","../src/components/remotePages/configs/permission/permission-role-config.ts","../src/components/remotePages/configs/permission/permission-role-manage-config.ts","../src/components/remotePages/configs/permission/permission-role.ts","../src/components/remotePages/configs/permission/permission-user-config.ts","../src/components/remotePages/configs/permission/permission-user.ts","../src/components/remotePages/configs/permission/role-manage.ts","../src/components/remotePages/i18n_config.ts","../src/components/remotePages/index.ts"],"sourcesContent":["export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","import defineProperty from \"./defineProperty.js\";\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n return keys;\n}\nexport default function _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n return target;\n}","function e(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)}}function t(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}function n(){return(n=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}function r(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function i(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r<o.length;r++)t.indexOf(n=o[r])>=0||(i[n]=e[n]);return i}function o(e){return 1==(null!=(t=e)&&\"object\"==typeof t&&!1===Array.isArray(t))&&\"[object Object]\"===Object.prototype.toString.call(e);var t}var u=Object.prototype,a=u.toString,f=u.hasOwnProperty,c=/^\\s*function (\\w+)/;function l(e){var t,n=null!==(t=null==e?void 0:e.type)&&void 0!==t?t:e;if(n){var r=n.toString().match(c);return r?r[1]:\"\"}return\"\"}var s=function(e){var t,n;return!1!==o(e)&&\"function\"==typeof(t=e.constructor)&&!1!==o(n=t.prototype)&&!1!==n.hasOwnProperty(\"isPrototypeOf\")},v=function(e){return e},y=v;if(\"production\"!==process.env.NODE_ENV){var p=\"undefined\"!=typeof console;y=p?function(e){console.warn(\"[VueTypes warn]: \"+e)}:v}var d=function(e,t){return f.call(e,t)},h=Number.isInteger||function(e){return\"number\"==typeof e&&isFinite(e)&&Math.floor(e)===e},b=Array.isArray||function(e){return\"[object Array]\"===a.call(e)},O=function(e){return\"[object Function]\"===a.call(e)},g=function(e){return s(e)&&d(e,\"_vueTypes_name\")},m=function(e){return s(e)&&(d(e,\"type\")||[\"_vueTypes_name\",\"validator\",\"default\",\"required\"].some(function(t){return d(e,t)}))};function j(e,t){return Object.defineProperty(e.bind(t),\"__original\",{value:e})}function _(e,t,n){var r;void 0===n&&(n=!1);var i=!0,o=\"\";r=s(e)?e:{type:e};var u=g(r)?r._vueTypes_name+\" - \":\"\";if(m(r)&&null!==r.type){if(void 0===r.type||!0===r.type)return i;if(!r.required&&void 0===t)return i;b(r.type)?(i=r.type.some(function(e){return!0===_(e,t,!0)}),o=r.type.map(function(e){return l(e)}).join(\" or \")):i=\"Array\"===(o=l(r))?b(t):\"Object\"===o?s(t):\"String\"===o||\"Number\"===o||\"Boolean\"===o||\"Function\"===o?function(e){if(null==e)return\"\";var t=e.constructor.toString().match(c);return t?t[1]:\"\"}(t)===o:t instanceof r.type}if(!i){var a=u+'value \"'+t+'\" should be of type \"'+o+'\"';return!1===n?(y(a),!1):a}if(d(r,\"validator\")&&O(r.validator)){var f=y,v=[];if(y=function(e){v.push(e)},i=r.validator(t),y=f,!i){var p=(v.length>1?\"* \":\"\")+v.join(\"\\n* \");return v.length=0,!1===n?(y(p),i):p}}return i}function T(e,t){var n=Object.defineProperties(t,{_vueTypes_name:{value:e,writable:!0},isRequired:{get:function(){return this.required=!0,this}},def:{value:function(e){return void 0!==e||this.default?O(e)||!0===_(this,e,!0)?(this.default=b(e)?function(){return[].concat(e)}:s(e)?function(){return Object.assign({},e)}:e,this):(y(this._vueTypes_name+' - invalid default value: \"'+e+'\"'),this):this}}}),r=n.validator;return O(r)&&(n.validator=j(r,n)),n}function w(e,t){var n=T(e,t);return Object.defineProperty(n,\"validate\",{value:function(e){return O(this.validator)&&y(this._vueTypes_name+\" - calling .validate() will overwrite the current custom validator function. Validator info:\\n\"+JSON.stringify(this)),this.validator=j(e,this),this}})}function k(e,t,n){var r,o,u=(r=t,o={},Object.getOwnPropertyNames(r).forEach(function(e){o[e]=Object.getOwnPropertyDescriptor(r,e)}),Object.defineProperties({},o));if(u._vueTypes_name=e,!s(n))return u;var a,f,c=n.validator,l=i(n,[\"validator\"]);if(O(c)){var v=u.validator;v&&(v=null!==(f=(a=v).__original)&&void 0!==f?f:a),u.validator=j(v?function(e){return v.call(this,e)&&c.call(this,e)}:c,u)}return Object.assign(u,l)}function P(e){return e.replace(/^(?!\\s*$)/gm,\" \")}var x=function(){return w(\"any\",{})},A=function(){return w(\"function\",{type:Function})},E=function(){return w(\"boolean\",{type:Boolean})},N=function(){return w(\"string\",{type:String})},q=function(){return w(\"number\",{type:Number})},S=function(){return w(\"array\",{type:Array})},V=function(){return w(\"object\",{type:Object})},F=function(){return T(\"integer\",{type:Number,validator:function(e){return h(e)}})},D=function(){return T(\"symbol\",{validator:function(e){return\"symbol\"==typeof e}})};function L(e,t){if(void 0===t&&(t=\"custom validation failed\"),\"function\"!=typeof e)throw new TypeError(\"[VueTypes error]: You must provide a function as argument\");return T(e.name||\"<<anonymous function>>\",{validator:function(n){var r=e(n);return r||y(this._vueTypes_name+\" - \"+t),r}})}function Y(e){if(!b(e))throw new TypeError(\"[VueTypes error]: You must provide an array as argument.\");var t='oneOf - value should be one of \"'+e.join('\", \"')+'\".',n=e.reduce(function(e,t){if(null!=t){var n=t.constructor;-1===e.indexOf(n)&&e.push(n)}return e},[]);return T(\"oneOf\",{type:n.length>0?n:void 0,validator:function(n){var r=-1!==e.indexOf(n);return r||y(t),r}})}function B(e){if(!b(e))throw new TypeError(\"[VueTypes error]: You must provide an array as argument\");for(var t=!1,n=[],r=0;r<e.length;r+=1){var i=e[r];if(m(i)){if(g(i)&&\"oneOf\"===i._vueTypes_name){n=n.concat(i.type);continue}if(O(i.validator)&&(t=!0),!0!==i.type&&i.type){n=n.concat(i.type);continue}}n.push(i)}return n=n.filter(function(e,t){return n.indexOf(e)===t}),T(\"oneOfType\",t?{type:n,validator:function(t){var n=[],r=e.some(function(e){var r=_(g(e)&&\"oneOf\"===e._vueTypes_name?e.type||null:e,t,!0);return\"string\"==typeof r&&n.push(r),!0===r});return r||y(\"oneOfType - provided value does not match any of the \"+n.length+\" passed-in validators:\\n\"+P(n.join(\"\\n\"))),r}}:{type:n})}function I(e){return T(\"arrayOf\",{type:Array,validator:function(t){var n,r=t.every(function(t){return!0===(n=_(e,t,!0))});return r||y(\"arrayOf - value validation error:\\n\"+P(n)),r}})}function J(e){return T(\"instanceOf\",{type:e})}function M(e){return T(\"objectOf\",{type:Object,validator:function(t){var n,r=Object.keys(t).every(function(r){return!0===(n=_(e,t[r],!0))});return r||y(\"objectOf - value validation error:\\n\"+P(n)),r}})}function R(e){var t=Object.keys(e),n=t.filter(function(t){var n;return!!(null===(n=e[t])||void 0===n?void 0:n.required)}),r=T(\"shape\",{type:Object,validator:function(r){var i=this;if(!s(r))return!1;var o=Object.keys(r);if(n.length>0&&n.some(function(e){return-1===o.indexOf(e)})){var u=n.filter(function(e){return-1===o.indexOf(e)});return y(1===u.length?'shape - required property \"'+u[0]+'\" is not defined.':'shape - required properties \"'+u.join('\", \"')+'\" are not defined.'),!1}return o.every(function(n){if(-1===t.indexOf(n))return!0===i._vueTypes_isLoose||(y('shape - shape definition does not include a \"'+n+'\" property. Allowed keys: \"'+t.join('\", \"')+'\".'),!1);var o=_(e[n],r[n],!0);return\"string\"==typeof o&&y('shape - \"'+n+'\" property validation error:\\n '+P(o)),!0===o})}});return Object.defineProperty(r,\"_vueTypes_isLoose\",{writable:!0,value:!1}),Object.defineProperty(r,\"loose\",{get:function(){return this._vueTypes_isLoose=!0,this}}),r}var $=function(){function e(){}return e.extend=function(e){var t=this;if(b(e))return e.forEach(function(e){return t.extend(e)}),this;var n=e.name,r=e.validate,o=void 0!==r&&r,u=e.getter,a=void 0!==u&&u,f=i(e,[\"name\",\"validate\",\"getter\"]);if(d(this,n))throw new TypeError('[VueTypes error]: Type \"'+n+'\" already defined');var c,l=f.type;return g(l)?(delete f.type,Object.defineProperty(this,n,a?{get:function(){return k(n,l,f)}}:{value:function(){var e,t=k(n,l,f);return t.validator&&(t.validator=(e=t.validator).bind.apply(e,[t].concat([].slice.call(arguments)))),t}})):(c=a?{get:function(){var e=Object.assign({},f);return o?w(n,e):T(n,e)},enumerable:!0}:{value:function(){var e,t,r=Object.assign({},f);return e=o?w(n,r):T(n,r),r.validator&&(e.validator=(t=r.validator).bind.apply(t,[e].concat([].slice.call(arguments)))),e},enumerable:!0},Object.defineProperty(this,n,c))},t(e,null,[{key:\"any\",get:function(){return x()}},{key:\"func\",get:function(){return A().def(this.defaults.func)}},{key:\"bool\",get:function(){return E().def(this.defaults.bool)}},{key:\"string\",get:function(){return N().def(this.defaults.string)}},{key:\"number\",get:function(){return q().def(this.defaults.number)}},{key:\"array\",get:function(){return S().def(this.defaults.array)}},{key:\"object\",get:function(){return V().def(this.defaults.object)}},{key:\"integer\",get:function(){return F().def(this.defaults.integer)}},{key:\"symbol\",get:function(){return D()}}]),e}();function z(e){var i;return void 0===e&&(e={func:function(){},bool:!0,string:\"\",number:0,array:function(){return[]},object:function(){return{}},integer:0}),(i=function(i){function o(){return i.apply(this,arguments)||this}return r(o,i),t(o,null,[{key:\"sensibleDefaults\",get:function(){return n({},this.defaults)},set:function(t){this.defaults=!1!==t?n({},!0!==t?t:e):{}}}]),o}($)).defaults=n({},e),i}$.defaults={},$.custom=L,$.oneOf=Y,$.instanceOf=J,$.oneOfType=B,$.arrayOf=I,$.objectOf=M,$.shape=R,$.utils={validate:function(e,t){return!0===_(t,e,!0)},toType:function(e,t,n){return void 0===n&&(n=!1),n?w(e,t):T(e,t)}};var C=function(e){function t(){return e.apply(this,arguments)||this}return r(t,e),t}(z());export default C;export{x as any,S as array,I as arrayOf,E as bool,z as createTypes,L as custom,k as fromType,A as func,J as instanceOf,F as integer,q as number,V as object,M as objectOf,Y as oneOf,B as oneOfType,R as shape,N as string,D as symbol,T as toType,w as toValidableType,_ as validateType};\n//# sourceMappingURL=vue-types.m.js.map\n","import { createTypes } from 'vue-types';\nconst PropTypes = createTypes({\n func: undefined,\n bool: undefined,\n string: undefined,\n number: undefined,\n array: undefined,\n object: undefined,\n integer: undefined\n});\nPropTypes.extend([{\n name: 'looseBool',\n getter: true,\n type: Boolean,\n default: undefined\n}, {\n name: 'style',\n getter: true,\n type: [String, Object],\n default: undefined\n}, {\n name: 'VueNode',\n getter: true,\n type: null\n}]);\nexport function withUndefined(type) {\n type.default = undefined;\n return type;\n}\nexport default PropTypes;","import vcWarning, { resetWarned } from '../vc-util/warning';\nexport { resetWarned };\nexport function noop() {}\n// eslint-disable-next-line import/no-mutable-exports\nlet warning = noop;\nif (process.env.NODE_ENV !== 'production') {\n warning = (valid, component, message) => {\n vcWarning(valid, `[ant-design-vue: ${component}] ${message}`);\n // StrictMode will inject console which will not throw warning in React 17.\n if (process.env.NODE_ENV === 'test') {\n resetWarned();\n }\n };\n}\nexport default warning;","// This icon file is generated automatically.\nvar LoadingOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"0 0 1024 1024\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M988 548c-19.9 0-36-16.1-36-36 0-59.4-11.6-117-34.6-171.3a440.45 440.45 0 00-94.3-139.9 437.71 437.71 0 00-139.9-94.3C629 83.6 571.4 72 512 72c-19.9 0-36-16.1-36-36s16.1-36 36-36c69.1 0 136.2 13.5 199.3 40.3C772.3 66 827 103 874 150c47 47 83.9 101.8 109.7 162.7 26.7 63.1 40.2 130.2 40.2 199.3.1 19.9-16 36-35.9 36z\" } }] }, \"name\": \"loading\", \"theme\": \"outlined\" };\nexport default LoadingOutlined;\n","/**\n * Take input from [0, n] and return it as [0, 1]\n * @hidden\n */\nexport function bound01(n, max) {\n if (isOnePointZero(n)) {\n n = '100%';\n }\n var isPercent = isPercentage(n);\n n = max === 360 ? n : Math.min(max, Math.max(0, parseFloat(n)));\n // Automatically convert percentage into number\n if (isPercent) {\n n = parseInt(String(n * max), 10) / 100;\n }\n // Handle floating point rounding errors\n if (Math.abs(n - max) < 0.000001) {\n return 1;\n }\n // Convert into [0, 1] range if it isn't already\n if (max === 360) {\n // If n is a hue given in degrees,\n // wrap around out-of-range values into [0, 360] range\n // then convert into [0, 1].\n n = (n < 0 ? (n % max) + max : n % max) / parseFloat(String(max));\n }\n else {\n // If n not a hue given in degrees\n // Convert into [0, 1] range if it isn't already.\n n = (n % max) / parseFloat(String(max));\n }\n return n;\n}\n/**\n * Force a number between 0 and 1\n * @hidden\n */\nexport function clamp01(val) {\n return Math.min(1, Math.max(0, val));\n}\n/**\n * Need to handle 1.0 as 100%, since once it is a number, there is no difference between it and 1\n * <http://stackoverflow.com/questions/7422072/javascript-how-to-detect-number-as-a-decimal-including-1-0>\n * @hidden\n */\nexport function isOnePointZero(n) {\n return typeof n === 'string' && n.indexOf('.') !== -1 && parseFloat(n) === 1;\n}\n/**\n * Check to see if string passed in is a percentage\n * @hidden\n */\nexport function isPercentage(n) {\n return typeof n === 'string' && n.indexOf('%') !== -1;\n}\n/**\n * Return a valid alpha value [0,1] with all invalid values being set to 1\n * @hidden\n */\nexport function boundAlpha(a) {\n a = parseFloat(a);\n if (isNaN(a) || a < 0 || a > 1) {\n a = 1;\n }\n return a;\n}\n/**\n * Replace a decimal with it's percentage value\n * @hidden\n */\nexport function convertToPercentage(n) {\n if (n <= 1) {\n return \"\".concat(Number(n) * 100, \"%\");\n }\n return n;\n}\n/**\n * Force a hex value to have 2 characters\n * @hidden\n */\nexport function pad2(c) {\n return c.length === 1 ? '0' + c : String(c);\n}\n","import { bound01, pad2 } from './util';\n// `rgbToHsl`, `rgbToHsv`, `hslToRgb`, `hsvToRgb` modified from:\n// <http://mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript>\n/**\n * Handle bounds / percentage checking to conform to CSS color spec\n * <http://www.w3.org/TR/css3-color/>\n * *Assumes:* r, g, b in [0, 255] or [0, 1]\n * *Returns:* { r, g, b } in [0, 255]\n */\nexport function rgbToRgb(r, g, b) {\n return {\n r: bound01(r, 255) * 255,\n g: bound01(g, 255) * 255,\n b: bound01(b, 255) * 255,\n };\n}\n/**\n * Converts an RGB color value to HSL.\n * *Assumes:* r, g, and b are contained in [0, 255] or [0, 1]\n * *Returns:* { h, s, l } in [0,1]\n */\nexport function rgbToHsl(r, g, b) {\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n var max = Math.max(r, g, b);\n var min = Math.min(r, g, b);\n var h = 0;\n var s = 0;\n var l = (max + min) / 2;\n if (max === min) {\n s = 0;\n h = 0; // achromatic\n }\n else {\n var d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n default:\n break;\n }\n h /= 6;\n }\n return { h: h, s: s, l: l };\n}\nfunction hue2rgb(p, q, t) {\n if (t < 0) {\n t += 1;\n }\n if (t > 1) {\n t -= 1;\n }\n if (t < 1 / 6) {\n return p + (q - p) * (6 * t);\n }\n if (t < 1 / 2) {\n return q;\n }\n if (t < 2 / 3) {\n return p + (q - p) * (2 / 3 - t) * 6;\n }\n return p;\n}\n/**\n * Converts an HSL color value to RGB.\n *\n * *Assumes:* h is contained in [0, 1] or [0, 360] and s and l are contained [0, 1] or [0, 100]\n * *Returns:* { r, g, b } in the set [0, 255]\n */\nexport function hslToRgb(h, s, l) {\n var r;\n var g;\n var b;\n h = bound01(h, 360);\n s = bound01(s, 100);\n l = bound01(l, 100);\n if (s === 0) {\n // achromatic\n g = l;\n b = l;\n r = l;\n }\n else {\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n var p = 2 * l - q;\n r = hue2rgb(p, q, h + 1 / 3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - 1 / 3);\n }\n return { r: r * 255, g: g * 255, b: b * 255 };\n}\n/**\n * Converts an RGB color value to HSV\n *\n * *Assumes:* r, g, and b are contained in the set [0, 255] or [0, 1]\n * *Returns:* { h, s, v } in [0,1]\n */\nexport function rgbToHsv(r, g, b) {\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n var max = Math.max(r, g, b);\n var min = Math.min(r, g, b);\n var h = 0;\n var v = max;\n var d = max - min;\n var s = max === 0 ? 0 : d / max;\n if (max === min) {\n h = 0; // achromatic\n }\n else {\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n default:\n break;\n }\n h /= 6;\n }\n return { h: h, s: s, v: v };\n}\n/**\n * Converts an HSV color value to RGB.\n *\n * *Assumes:* h is contained in [0, 1] or [0, 360] and s and v are contained in [0, 1] or [0, 100]\n * *Returns:* { r, g, b } in the set [0, 255]\n */\nexport function hsvToRgb(h, s, v) {\n h = bound01(h, 360) * 6;\n s = bound01(s, 100);\n v = bound01(v, 100);\n var i = Math.floor(h);\n var f = h - i;\n var p = v * (1 - s);\n var q = v * (1 - f * s);\n var t = v * (1 - (1 - f) * s);\n var mod = i % 6;\n var r = [v, q, p, p, t, v][mod];\n var g = [t, v, v, q, p, p][mod];\n var b = [p, p, t, v, v, q][mod];\n return { r: r * 255, g: g * 255, b: b * 255 };\n}\n/**\n * Converts an RGB color to hex\n *\n * Assumes r, g, and b are contained in the set [0, 255]\n * Returns a 3 or 6 character hex\n */\nexport function rgbToHex(r, g, b, allow3Char) {\n var hex = [\n pad2(Math.round(r).toString(16)),\n pad2(Math.round(g).toString(16)),\n pad2(Math.round(b).toString(16)),\n ];\n // Return a 3 character hex if possible\n if (allow3Char &&\n hex[0].startsWith(hex[0].charAt(1)) &&\n hex[1].startsWith(hex[1].charAt(1)) &&\n hex[2].startsWith(hex[2].charAt(1))) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0);\n }\n return hex.join('');\n}\n/**\n * Converts an RGBA color plus alpha transparency to hex\n *\n * Assumes r, g, b are contained in the set [0, 255] and\n * a in [0, 1]. Returns a 4 or 8 character rgba hex\n */\n// eslint-disable-next-line max-params\nexport function rgbaToHex(r, g, b, a, allow4Char) {\n var hex = [\n pad2(Math.round(r).toString(16)),\n pad2(Math.round(g).toString(16)),\n pad2(Math.round(b).toString(16)),\n pad2(convertDecimalToHex(a)),\n ];\n // Return a 4 character hex if possible\n if (allow4Char &&\n hex[0].startsWith(hex[0].charAt(1)) &&\n hex[1].startsWith(hex[1].charAt(1)) &&\n hex[2].startsWith(hex[2].charAt(1)) &&\n hex[3].startsWith(hex[3].charAt(1))) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0) + hex[3].charAt(0);\n }\n return hex.join('');\n}\n/**\n * Converts an RGBA color to an ARGB Hex8 string\n * Rarely used, but required for \"toFilter()\"\n */\nexport function rgbaToArgbHex(r, g, b, a) {\n var hex = [\n pad2(convertDecimalToHex(a)),\n pad2(Math.round(r).toString(16)),\n pad2(Math.round(g).toString(16)),\n pad2(Math.round(b).toString(16)),\n ];\n return hex.join('');\n}\n/** Converts a decimal to a hex value */\nexport function convertDecimalToHex(d) {\n return Math.round(parseFloat(d) * 255).toString(16);\n}\n/** Converts a hex value to a decimal */\nexport function convertHexToDecimal(h) {\n return parseIntFromHex(h) / 255;\n}\n/** Parse a base-16 hex value into a base-10 integer */\nexport function parseIntFromHex(val) {\n return parseInt(val, 16);\n}\nexport function numberInputToObject(color) {\n return {\n r: color >> 16,\n g: (color & 0xff00) >> 8,\n b: color & 0xff,\n };\n}\n","// https://github.com/bahamas10/css-color-names/blob/master/css-color-names.json\n/**\n * @hidden\n */\nexport var names = {\n aliceblue: '#f0f8ff',\n antiquewhite: '#faebd7',\n aqua: '#00ffff',\n aquamarine: '#7fffd4',\n azure: '#f0ffff',\n beige: '#f5f5dc',\n bisque: '#ffe4c4',\n black: '#000000',\n blanchedalmond: '#ffebcd',\n blue: '#0000ff',\n blueviolet: '#8a2be2',\n brown: '#a52a2a',\n burlywood: '#deb887',\n cadetblue: '#5f9ea0',\n chartreuse: '#7fff00',\n chocolate: '#d2691e',\n coral: '#ff7f50',\n cornflowerblue: '#6495ed',\n cornsilk: '#fff8dc',\n crimson: '#dc143c',\n cyan: '#00ffff',\n darkblue: '#00008b',\n darkcyan: '#008b8b',\n darkgoldenrod: '#b8860b',\n darkgray: '#a9a9a9',\n darkgreen: '#006400',\n darkgrey: '#a9a9a9',\n darkkhaki: '#bdb76b',\n darkmagenta: '#8b008b',\n darkolivegreen: '#556b2f',\n darkorange: '#ff8c00',\n darkorchid: '#9932cc',\n darkred: '#8b0000',\n darksalmon: '#e9967a',\n darkseagreen: '#8fbc8f',\n darkslateblue: '#483d8b',\n darkslategray: '#2f4f4f',\n darkslategrey: '#2f4f4f',\n darkturquoise: '#00ced1',\n darkviolet: '#9400d3',\n deeppink: '#ff1493',\n deepskyblue: '#00bfff',\n dimgray: '#696969',\n dimgrey: '#696969',\n dodgerblue: '#1e90ff',\n firebrick: '#b22222',\n floralwhite: '#fffaf0',\n forestgreen: '#228b22',\n fuchsia: '#ff00ff',\n gainsboro: '#dcdcdc',\n ghostwhite: '#f8f8ff',\n goldenrod: '#daa520',\n gold: '#ffd700',\n gray: '#808080',\n green: '#008000',\n greenyellow: '#adff2f',\n grey: '#808080',\n honeydew: '#f0fff0',\n hotpink: '#ff69b4',\n indianred: '#cd5c5c',\n indigo: '#4b0082',\n ivory: '#fffff0',\n khaki: '#f0e68c',\n lavenderblush: '#fff0f5',\n lavender: '#e6e6fa',\n lawngreen: '#7cfc00',\n lemonchiffon: '#fffacd',\n lightblue: '#add8e6',\n lightcoral: '#f08080',\n lightcyan: '#e0ffff',\n lightgoldenrodyellow: '#fafad2',\n lightgray: '#d3d3d3',\n lightgreen: '#90ee90',\n lightgrey: '#d3d3d3',\n lightpink: '#ffb6c1',\n lightsalmon: '#ffa07a',\n lightseagreen: '#20b2aa',\n lightskyblue: '#87cefa',\n lightslategray: '#778899',\n lightslategrey: '#778899',\n lightsteelblue: '#b0c4de',\n lightyellow: '#ffffe0',\n lime: '#00ff00',\n limegreen: '#32cd32',\n linen: '#faf0e6',\n magenta: '#ff00ff',\n maroon: '#800000',\n mediumaquamarine: '#66cdaa',\n mediumblue: '#0000cd',\n mediumorchid: '#ba55d3',\n mediumpurple: '#9370db',\n mediumseagreen: '#3cb371',\n mediumslateblue: '#7b68ee',\n mediumspringgreen: '#00fa9a',\n mediumturquoise: '#48d1cc',\n mediumvioletred: '#c71585',\n midnightblue: '#191970',\n mintcream: '#f5fffa',\n mistyrose: '#ffe4e1',\n moccasin: '#ffe4b5',\n navajowhite: '#ffdead',\n navy: '#000080',\n oldlace: '#fdf5e6',\n olive: '#808000',\n olivedrab: '#6b8e23',\n orange: '#ffa500',\n orangered: '#ff4500',\n orchid: '#da70d6',\n palegoldenrod: '#eee8aa',\n palegreen: '#98fb98',\n paleturquoise: '#afeeee',\n palevioletred: '#db7093',\n papayawhip: '#ffefd5',\n peachpuff: '#ffdab9',\n peru: '#cd853f',\n pink: '#ffc0cb',\n plum: '#dda0dd',\n powderblue: '#b0e0e6',\n purple: '#800080',\n rebeccapurple: '#663399',\n red: '#ff0000',\n rosybrown: '#bc8f8f',\n royalblue: '#4169e1',\n saddlebrown: '#8b4513',\n salmon: '#fa8072',\n sandybrown: '#f4a460',\n seagreen: '#2e8b57',\n seashell: '#fff5ee',\n sienna: '#a0522d',\n silver: '#c0c0c0',\n skyblue: '#87ceeb',\n slateblue: '#6a5acd',\n slategray: '#708090',\n slategrey: '#708090',\n snow: '#fffafa',\n springgreen: '#00ff7f',\n steelblue: '#4682b4',\n tan: '#d2b48c',\n teal: '#008080',\n thistle: '#d8bfd8',\n tomato: '#ff6347',\n turquoise: '#40e0d0',\n violet: '#ee82ee',\n wheat: '#f5deb3',\n white: '#ffffff',\n whitesmoke: '#f5f5f5',\n yellow: '#ffff00',\n yellowgreen: '#9acd32',\n};\n","/* eslint-disable @typescript-eslint/no-redundant-type-constituents */\nimport { convertHexToDecimal, hslToRgb, hsvToRgb, parseIntFromHex, rgbToRgb } from './conversion';\nimport { names } from './css-color-names';\nimport { boundAlpha, convertToPercentage } from './util';\n/**\n * Given a string or object, convert that input to RGB\n *\n * Possible string inputs:\n * ```\n * \"red\"\n * \"#f00\" or \"f00\"\n * \"#ff0000\" or \"ff0000\"\n * \"#ff000000\" or \"ff000000\"\n * \"rgb 255 0 0\" or \"rgb (255, 0, 0)\"\n * \"rgb 1.0 0 0\" or \"rgb (1, 0, 0)\"\n * \"rgba (255, 0, 0, 1)\" or \"rgba 255, 0, 0, 1\"\n * \"rgba (1.0, 0, 0, 1)\" or \"rgba 1.0, 0, 0, 1\"\n * \"hsl(0, 100%, 50%)\" or \"hsl 0 100% 50%\"\n * \"hsla(0, 100%, 50%, 1)\" or \"hsla 0 100% 50%, 1\"\n * \"hsv(0, 100%, 100%)\" or \"hsv 0 100% 100%\"\n * ```\n */\nexport function inputToRGB(color) {\n var rgb = { r: 0, g: 0, b: 0 };\n var a = 1;\n var s = null;\n var v = null;\n var l = null;\n var ok = false;\n var format = false;\n if (typeof color === 'string') {\n color = stringInputToObject(color);\n }\n if (typeof color === 'object') {\n if (isValidCSSUnit(color.r) && isValidCSSUnit(color.g) && isValidCSSUnit(color.b)) {\n rgb = rgbToRgb(color.r, color.g, color.b);\n ok = true;\n format = String(color.r).substr(-1) === '%' ? 'prgb' : 'rgb';\n }\n else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.v)) {\n s = convertToPercentage(color.s);\n v = convertToPercentage(color.v);\n rgb = hsvToRgb(color.h, s, v);\n ok = true;\n format = 'hsv';\n }\n else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.l)) {\n s = convertToPercentage(color.s);\n l = convertToPercentage(color.l);\n rgb = hslToRgb(color.h, s, l);\n ok = true;\n format = 'hsl';\n }\n if (Object.prototype.hasOwnProperty.call(color, 'a')) {\n a = color.a;\n }\n }\n a = boundAlpha(a);\n return {\n ok: ok,\n format: color.format || format,\n r: Math.min(255, Math.max(rgb.r, 0)),\n g: Math.min(255, Math.max(rgb.g, 0)),\n b: Math.min(255, Math.max(rgb.b, 0)),\n a: a,\n };\n}\n// <http://www.w3.org/TR/css3-values/#integers>\nvar CSS_INTEGER = '[-\\\\+]?\\\\d+%?';\n// <http://www.w3.org/TR/css3-values/#number-value>\nvar CSS_NUMBER = '[-\\\\+]?\\\\d*\\\\.\\\\d+%?';\n// Allow positive/negative integer/number. Don't capture the either/or, just the entire outcome.\nvar CSS_UNIT = \"(?:\".concat(CSS_NUMBER, \")|(?:\").concat(CSS_INTEGER, \")\");\n// Actual matching.\n// Parentheses and commas are optional, but not required.\n// Whitespace can take the place of commas or opening paren\nvar PERMISSIVE_MATCH3 = \"[\\\\s|\\\\(]+(\".concat(CSS_UNIT, \")[,|\\\\s]+(\").concat(CSS_UNIT, \")[,|\\\\s]+(\").concat(CSS_UNIT, \")\\\\s*\\\\)?\");\nvar PERMISSIVE_MATCH4 = \"[\\\\s|\\\\(]+(\".concat(CSS_UNIT, \")[,|\\\\s]+(\").concat(CSS_UNIT, \")[,|\\\\s]+(\").concat(CSS_UNIT, \")[,|\\\\s]+(\").concat(CSS_UNIT, \")\\\\s*\\\\)?\");\nvar matchers = {\n CSS_UNIT: new RegExp(CSS_UNIT),\n rgb: new RegExp('rgb' + PERMISSIVE_MATCH3),\n rgba: new RegExp('rgba' + PERMISSIVE_MATCH4),\n hsl: new RegExp('hsl' + PERMISSIVE_MATCH3),\n hsla: new RegExp('hsla' + PERMISSIVE_MATCH4),\n hsv: new RegExp('hsv' + PERMISSIVE_MATCH3),\n hsva: new RegExp('hsva' + PERMISSIVE_MATCH4),\n hex3: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex6: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,\n hex4: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex8: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,\n};\n/**\n * Permissive string parsing. Take in a number of formats, and output an object\n * based on detected format. Returns `{ r, g, b }` or `{ h, s, l }` or `{ h, s, v}`\n */\nexport function stringInputToObject(color) {\n color = color.trim().toLowerCase();\n if (color.length === 0) {\n return false;\n }\n var named = false;\n if (names[color]) {\n color = names[color];\n named = true;\n }\n else if (color === 'transparent') {\n return { r: 0, g: 0, b: 0, a: 0, format: 'name' };\n }\n // Try to match string input using regular expressions.\n // Keep most of the number bounding out of this function - don't worry about [0,1] or [0,100] or [0,360]\n // Just return an object and let the conversion functions handle that.\n // This way the result will be the same whether the tinycolor is initialized with string or object.\n var match = matchers.rgb.exec(color);\n if (match) {\n return { r: match[1], g: match[2], b: match[3] };\n }\n match = matchers.rgba.exec(color);\n if (match) {\n return { r: match[1], g: match[2], b: match[3], a: match[4] };\n }\n match = matchers.hsl.exec(color);\n if (match) {\n return { h: match[1], s: match[2], l: match[3] };\n }\n match = matchers.hsla.exec(color);\n if (match) {\n return { h: match[1], s: match[2], l: match[3], a: match[4] };\n }\n match = matchers.hsv.exec(color);\n if (match) {\n return { h: match[1], s: match[2], v: match[3] };\n }\n match = matchers.hsva.exec(color);\n if (match) {\n return { h: match[1], s: match[2], v: match[3], a: match[4] };\n }\n match = matchers.hex8.exec(color);\n if (match) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n a: convertHexToDecimal(match[4]),\n format: named ? 'name' : 'hex8',\n };\n }\n match = matchers.hex6.exec(color);\n if (match) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n format: named ? 'name' : 'hex',\n };\n }\n match = matchers.hex4.exec(color);\n if (match) {\n return {\n r: parseIntFromHex(match[1] + match[1]),\n g: parseIntFromHex(match[2] + match[2]),\n b: parseIntFromHex(match[3] + match[3]),\n a: convertHexToDecimal(match[4] + match[4]),\n format: named ? 'name' : 'hex8',\n };\n }\n match = matchers.hex3.exec(color);\n if (match) {\n return {\n r: parseIntFromHex(match[1] + match[1]),\n g: parseIntFromHex(match[2] + match[2]),\n b: parseIntFromHex(match[3] + match[3]),\n format: named ? 'name' : 'hex',\n };\n }\n return false;\n}\n/**\n * Check to see if it looks like a CSS unit\n * (see `matchers` above for definition).\n */\nexport function isValidCSSUnit(color) {\n return Boolean(matchers.CSS_UNIT.exec(String(color)));\n}\n","import { numberInputToObject, rgbaToHex, rgbToHex, rgbToHsl, rgbToHsv } from './conversion';\nimport { names } from './css-color-names';\nimport { inputToRGB } from './format-input';\nimport { bound01, boundAlpha, clamp01 } from './util';\nvar TinyColor = /** @class */ (function () {\n function TinyColor(color, opts) {\n if (color === void 0) { color = ''; }\n if (opts === void 0) { opts = {}; }\n var _a;\n // If input is already a tinycolor, return itself\n if (color instanceof TinyColor) {\n // eslint-disable-next-line no-constructor-return\n return color;\n }\n if (typeof color === 'number') {\n color = numberInputToObject(color);\n }\n this.originalInput = color;\n var rgb = inputToRGB(color);\n this.originalInput = color;\n this.r = rgb.r;\n this.g = rgb.g;\n this.b = rgb.b;\n this.a = rgb.a;\n this.roundA = Math.round(100 * this.a) / 100;\n this.format = (_a = opts.format) !== null && _a !== void 0 ? _a : rgb.format;\n this.gradientType = opts.gradientType;\n // Don't let the range of [0,255] come back in [0,1].\n // Potentially lose a little bit of precision here, but will fix issues where\n // .5 gets interpreted as half of the total, instead of half of 1\n // If it was supposed to be 128, this was already taken care of by `inputToRgb`\n if (this.r < 1) {\n this.r = Math.round(this.r);\n }\n if (this.g < 1) {\n this.g = Math.round(this.g);\n }\n if (this.b < 1) {\n this.b = Math.round(this.b);\n }\n this.isValid = rgb.ok;\n }\n TinyColor.prototype.isDark = function () {\n return this.getBrightness() < 128;\n };\n TinyColor.prototype.isLight = function () {\n return !this.isDark();\n };\n /**\n * Returns the perceived brightness of the color, from 0-255.\n */\n TinyColor.prototype.getBrightness = function () {\n // http://www.w3.org/TR/AERT#color-contrast\n var rgb = this.toRgb();\n return (rgb.r * 299 + rgb.g * 587 + rgb.b * 114) / 1000;\n };\n /**\n * Returns the perceived luminance of a color, from 0-1.\n */\n TinyColor.prototype.getLuminance = function () {\n // http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef\n var rgb = this.toRgb();\n var R;\n var G;\n var B;\n var RsRGB = rgb.r / 255;\n var GsRGB = rgb.g / 255;\n var BsRGB = rgb.b / 255;\n if (RsRGB <= 0.03928) {\n R = RsRGB / 12.92;\n }\n else {\n // eslint-disable-next-line prefer-exponentiation-operator\n R = Math.pow((RsRGB + 0.055) / 1.055, 2.4);\n }\n if (GsRGB <= 0.03928) {\n G = GsRGB / 12.92;\n }\n else {\n // eslint-disable-next-line prefer-exponentiation-operator\n G = Math.pow((GsRGB + 0.055) / 1.055, 2.4);\n }\n if (BsRGB <= 0.03928) {\n B = BsRGB / 12.92;\n }\n else {\n // eslint-disable-next-line prefer-exponentiation-operator\n B = Math.pow((BsRGB + 0.055) / 1.055, 2.4);\n }\n return 0.2126 * R + 0.7152 * G + 0.0722 * B;\n };\n /**\n * Returns the alpha value of a color, from 0-1.\n */\n TinyColor.prototype.getAlpha = function () {\n return this.a;\n };\n /**\n * Sets the alpha value on the current color.\n *\n * @param alpha - The new alpha value. The accepted range is 0-1.\n */\n TinyColor.prototype.setAlpha = function (alpha) {\n this.a = boundAlpha(alpha);\n this.roundA = Math.round(100 * this.a) / 100;\n return this;\n };\n /**\n * Returns whether the color is monochrome.\n */\n TinyColor.prototype.isMonochrome = function () {\n var s = this.toHsl().s;\n return s === 0;\n };\n /**\n * Returns the object as a HSVA object.\n */\n TinyColor.prototype.toHsv = function () {\n var hsv = rgbToHsv(this.r, this.g, this.b);\n return { h: hsv.h * 360, s: hsv.s, v: hsv.v, a: this.a };\n };\n /**\n * Returns the hsva values interpolated into a string with the following format:\n * \"hsva(xxx, xxx, xxx, xx)\".\n */\n TinyColor.prototype.toHsvString = function () {\n var hsv = rgbToHsv(this.r, this.g, this.b);\n var h = Math.round(hsv.h * 360);\n var s = Math.round(hsv.s * 100);\n var v = Math.round(hsv.v * 100);\n return this.a === 1 ? \"hsv(\".concat(h, \", \").concat(s, \"%, \").concat(v, \"%)\") : \"hsva(\".concat(h, \", \").concat(s, \"%, \").concat(v, \"%, \").concat(this.roundA, \")\");\n };\n /**\n * Returns the object as a HSLA object.\n */\n TinyColor.prototype.toHsl = function () {\n var hsl = rgbToHsl(this.r, this.g, this.b);\n return { h: hsl.h * 360, s: hsl.s, l: hsl.l, a: this.a };\n };\n /**\n * Returns the hsla values interpolated into a string with the following format:\n * \"hsla(xxx, xxx, xxx, xx)\".\n */\n TinyColor.prototype.toHslString = function () {\n var hsl = rgbToHsl(this.r, this.g, this.b);\n var h = Math.round(hsl.h * 360);\n var s = Math.round(hsl.s * 100);\n var l = Math.round(hsl.l * 100);\n return this.a === 1 ? \"hsl(\".concat(h, \", \").concat(s, \"%, \").concat(l, \"%)\") : \"hsla(\".concat(h, \", \").concat(s, \"%, \").concat(l, \"%, \").concat(this.roundA, \")\");\n };\n /**\n * Returns the hex value of the color.\n * @param allow3Char will shorten hex value to 3 char if possible\n */\n TinyColor.prototype.toHex = function (allow3Char) {\n if (allow3Char === void 0) { allow3Char = false; }\n return rgbToHex(this.r, this.g, this.b, allow3Char);\n };\n /**\n * Returns the hex value of the color -with a # prefixed.\n * @param allow3Char will shorten hex value to 3 char if possible\n */\n TinyColor.prototype.toHexString = function (allow3Char) {\n if (allow3Char === void 0) { allow3Char = false; }\n return '#' + this.toHex(allow3Char);\n };\n /**\n * Returns the hex 8 value of the color.\n * @param allow4Char will shorten hex value to 4 char if possible\n */\n TinyColor.prototype.toHex8 = function (allow4Char) {\n if (allow4Char === void 0) { allow4Char = false; }\n return rgbaToHex(this.r, this.g, this.b, this.a, allow4Char);\n };\n /**\n * Returns the hex 8 value of the color -with a # prefixed.\n * @param allow4Char will shorten hex value to 4 char if possible\n */\n TinyColor.prototype.toHex8String = function (allow4Char) {\n if (allow4Char === void 0) { allow4Char = false; }\n return '#' + this.toHex8(allow4Char);\n };\n /**\n * Returns the shorter hex value of the color depends on its alpha -with a # prefixed.\n * @param allowShortChar will shorten hex value to 3 or 4 char if possible\n */\n TinyColor.prototype.toHexShortString = function (allowShortChar) {\n if (allowShortChar === void 0) { allowShortChar = false; }\n return this.a === 1 ? this.toHexString(allowShortChar) : this.toHex8String(allowShortChar);\n };\n /**\n * Returns the object as a RGBA object.\n */\n TinyColor.prototype.toRgb = function () {\n return {\n r: Math.round(this.r),\n g: Math.round(this.g),\n b: Math.round(this.b),\n a: this.a,\n };\n };\n /**\n * Returns the RGBA values interpolated into a string with the following format:\n * \"RGBA(xxx, xxx, xxx, xx)\".\n */\n TinyColor.prototype.toRgbString = function () {\n var r = Math.round(this.r);\n var g = Math.round(this.g);\n var b = Math.round(this.b);\n return this.a === 1 ? \"rgb(\".concat(r, \", \").concat(g, \", \").concat(b, \")\") : \"rgba(\".concat(r, \", \").concat(g, \", \").concat(b, \", \").concat(this.roundA, \")\");\n };\n /**\n * Returns the object as a RGBA object.\n */\n TinyColor.prototype.toPercentageRgb = function () {\n var fmt = function (x) { return \"\".concat(Math.round(bound01(x, 255) * 100), \"%\"); };\n return {\n r: fmt(this.r),\n g: fmt(this.g),\n b: fmt(this.b),\n a: this.a,\n };\n };\n /**\n * Returns the RGBA relative values interpolated into a string\n */\n TinyColor.prototype.toPercentageRgbString = function () {\n var rnd = function (x) { return Math.round(bound01(x, 255) * 100); };\n return this.a === 1\n ? \"rgb(\".concat(rnd(this.r), \"%, \").concat(rnd(this.g), \"%, \").concat(rnd(this.b), \"%)\")\n : \"rgba(\".concat(rnd(this.r), \"%, \").concat(rnd(this.g), \"%, \").concat(rnd(this.b), \"%, \").concat(this.roundA, \")\");\n };\n /**\n * The 'real' name of the color -if there is one.\n */\n TinyColor.prototype.toName = function () {\n if (this.a === 0) {\n return 'transparent';\n }\n if (this.a < 1) {\n return false;\n }\n var hex = '#' + rgbToHex(this.r, this.g, this.b, false);\n for (var _i = 0, _a = Object.entries(names); _i < _a.length; _i++) {\n var _b = _a[_i], key = _b[0], value = _b[1];\n if (hex === value) {\n return key;\n }\n }\n return false;\n };\n TinyColor.prototype.toString = function (format) {\n var formatSet = Boolean(format);\n format = format !== null && format !== void 0 ? format : this.format;\n var formattedString = false;\n var hasAlpha = this.a < 1 && this.a >= 0;\n var needsAlphaFormat = !formatSet && hasAlpha && (format.startsWith('hex') || format === 'name');\n if (needsAlphaFormat) {\n // Special case for \"transparent\", all other non-alpha formats\n // will return rgba when there is transparency.\n if (format === 'name' && this.a === 0) {\n return this.toName();\n }\n return this.toRgbString();\n }\n if (format === 'rgb') {\n formattedString = this.toRgbString();\n }\n if (format === 'prgb') {\n formattedString = this.toPercentageRgbString();\n }\n if (format === 'hex' || format === 'hex6') {\n formattedString = this.toHexString();\n }\n if (format === 'hex3') {\n formattedString = this.toHexString(true);\n }\n if (format === 'hex4') {\n formattedString = this.toHex8String(true);\n }\n if (format === 'hex8') {\n formattedString = this.toHex8String();\n }\n if (format === 'name') {\n formattedString = this.toName();\n }\n if (format === 'hsl') {\n formattedString = this.toHslString();\n }\n if (format === 'hsv') {\n formattedString = this.toHsvString();\n }\n return formattedString || this.toHexString();\n };\n TinyColor.prototype.toNumber = function () {\n return (Math.round(this.r) << 16) + (Math.round(this.g) << 8) + Math.round(this.b);\n };\n TinyColor.prototype.clone = function () {\n return new TinyColor(this.toString());\n };\n /**\n * Lighten the color a given amount. Providing 100 will always return white.\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.lighten = function (amount) {\n if (amount === void 0) { amount = 10; }\n var hsl = this.toHsl();\n hsl.l += amount / 100;\n hsl.l = clamp01(hsl.l);\n return new TinyColor(hsl);\n };\n /**\n * Brighten the color a given amount, from 0 to 100.\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.brighten = function (amount) {\n if (amount === void 0) { amount = 10; }\n var rgb = this.toRgb();\n rgb.r = Math.max(0, Math.min(255, rgb.r - Math.round(255 * -(amount / 100))));\n rgb.g = Math.max(0, Math.min(255, rgb.g - Math.round(255 * -(amount / 100))));\n rgb.b = Math.max(0, Math.min(255, rgb.b - Math.round(255 * -(amount / 100))));\n return new TinyColor(rgb);\n };\n /**\n * Darken the color a given amount, from 0 to 100.\n * Providing 100 will always return black.\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.darken = function (amount) {\n if (amount === void 0) { amount = 10; }\n var hsl = this.toHsl();\n hsl.l -= amount / 100;\n hsl.l = clamp01(hsl.l);\n return new TinyColor(hsl);\n };\n /**\n * Mix the color with pure white, from 0 to 100.\n * Providing 0 will do nothing, providing 100 will always return white.\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.tint = function (amount) {\n if (amount === void 0) { amount = 10; }\n return this.mix('white', amount);\n };\n /**\n * Mix the color with pure black, from 0 to 100.\n * Providing 0 will do nothing, providing 100 will always return black.\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.shade = function (amount) {\n if (amount === void 0) { amount = 10; }\n return this.mix('black', amount);\n };\n /**\n * Desaturate the color a given amount, from 0 to 100.\n * Providing 100 will is the same as calling greyscale\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.desaturate = function (amount) {\n if (amount === void 0) { amount = 10; }\n var hsl = this.toHsl();\n hsl.s -= amount / 100;\n hsl.s = clamp01(hsl.s);\n return new TinyColor(hsl);\n };\n /**\n * Saturate the color a given amount, from 0 to 100.\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.saturate = function (amount) {\n if (amount === void 0) { amount = 10; }\n var hsl = this.toHsl();\n hsl.s += amount / 100;\n hsl.s = clamp01(hsl.s);\n return new TinyColor(hsl);\n };\n /**\n * Completely desaturates a color into greyscale.\n * Same as calling `desaturate(100)`\n */\n TinyColor.prototype.greyscale = function () {\n return this.desaturate(100);\n };\n /**\n * Spin takes a positive or negative amount within [-360, 360] indicating the change of hue.\n * Values outside of this range will be wrapped into this range.\n */\n TinyColor.prototype.spin = function (amount) {\n var hsl = this.toHsl();\n var hue = (hsl.h + amount) % 360;\n hsl.h = hue < 0 ? 360 + hue : hue;\n return new TinyColor(hsl);\n };\n /**\n * Mix the current color a given amount with another color, from 0 to 100.\n * 0 means no mixing (return current color).\n */\n TinyColor.prototype.mix = function (color, amount) {\n if (amount === void 0) { amount = 50; }\n var rgb1 = this.toRgb();\n var rgb2 = new TinyColor(color).toRgb();\n var p = amount / 100;\n var rgba = {\n r: (rgb2.r - rgb1.r) * p + rgb1.r,\n g: (rgb2.g - rgb1.g) * p + rgb1.g,\n b: (rgb2.b - rgb1.b) * p + rgb1.b,\n a: (rgb2.a - rgb1.a) * p + rgb1.a,\n };\n return new TinyColor(rgba);\n };\n TinyColor.prototype.analogous = function (results, slices) {\n if (results === void 0) { results = 6; }\n if (slices === void 0) { slices = 30; }\n var hsl = this.toHsl();\n var part = 360 / slices;\n var ret = [this];\n for (hsl.h = (hsl.h - ((part * results) >> 1) + 720) % 360; --results;) {\n hsl.h = (hsl.h + part) % 360;\n ret.push(new TinyColor(hsl));\n }\n return ret;\n };\n /**\n * taken from https://github.com/infusion/jQuery-xcolor/blob/master/jquery.xcolor.js\n */\n TinyColor.prototype.complement = function () {\n var hsl = this.toHsl();\n hsl.h = (hsl.h + 180) % 360;\n return new TinyColor(hsl);\n };\n TinyColor.prototype.monochromatic = function (results) {\n if (results === void 0) { results = 6; }\n var hsv = this.toHsv();\n var h = hsv.h;\n var s = hsv.s;\n var v = hsv.v;\n var res = [];\n var modification = 1 / results;\n while (results--) {\n res.push(new TinyColor({ h: h, s: s, v: v }));\n v = (v + modification) % 1;\n }\n return res;\n };\n TinyColor.prototype.splitcomplement = function () {\n var hsl = this.toHsl();\n var h = hsl.h;\n return [\n this,\n new TinyColor({ h: (h + 72) % 360, s: hsl.s, l: hsl.l }),\n new TinyColor({ h: (h + 216) % 360, s: hsl.s, l: hsl.l }),\n ];\n };\n /**\n * Compute how the color would appear on a background\n */\n TinyColor.prototype.onBackground = function (background) {\n var fg = this.toRgb();\n var bg = new TinyColor(background).toRgb();\n var alpha = fg.a + bg.a * (1 - fg.a);\n return new TinyColor({\n r: (fg.r * fg.a + bg.r * bg.a * (1 - fg.a)) / alpha,\n g: (fg.g * fg.a + bg.g * bg.a * (1 - fg.a)) / alpha,\n b: (fg.b * fg.a + bg.b * bg.a * (1 - fg.a)) / alpha,\n a: alpha,\n });\n };\n /**\n * Alias for `polyad(3)`\n */\n TinyColor.prototype.triad = function () {\n return this.polyad(3);\n };\n /**\n * Alias for `polyad(4)`\n */\n TinyColor.prototype.tetrad = function () {\n return this.polyad(4);\n };\n /**\n * Get polyad colors, like (for 1, 2, 3, 4, 5, 6, 7, 8, etc...)\n * monad, dyad, triad, tetrad, pentad, hexad, heptad, octad, etc...\n */\n TinyColor.prototype.polyad = function (n) {\n var hsl = this.toHsl();\n var h = hsl.h;\n var result = [this];\n var increment = 360 / n;\n for (var i = 1; i < n; i++) {\n result.push(new TinyColor({ h: (h + i * increment) % 360, s: hsl.s, l: hsl.l }));\n }\n return result;\n };\n /**\n * compare color vs current color\n */\n TinyColor.prototype.equals = function (color) {\n return this.toRgbString() === new TinyColor(color).toRgbString();\n };\n return TinyColor;\n}());\nexport { TinyColor };\n// kept for backwards compatability with v1\nexport function tinycolor(color, opts) {\n if (color === void 0) { color = ''; }\n if (opts === void 0) { opts = {}; }\n return new TinyColor(color, opts);\n}\n","import { inputToRGB, rgbToHex, rgbToHsv } from '@ctrl/tinycolor';\n\nvar hueStep = 2; // 色相阶梯\n\nvar saturationStep = 0.16; // 饱和度阶梯,浅色部分\n\nvar saturationStep2 = 0.05; // 饱和度阶梯,深色部分\n\nvar brightnessStep1 = 0.05; // 亮度阶梯,浅色部分\n\nvar brightnessStep2 = 0.15; // 亮度阶梯,深色部分\n\nvar lightColorCount = 5; // 浅色数量,主色上\n\nvar darkColorCount = 4; // 深色数量,主色下\n// 暗色主题颜色映射关系表\n\nvar darkColorMap = [{\n index: 7,\n opacity: 0.15\n}, {\n index: 6,\n opacity: 0.25\n}, {\n index: 5,\n opacity: 0.3\n}, {\n index: 5,\n opacity: 0.45\n}, {\n index: 5,\n opacity: 0.65\n}, {\n index: 5,\n opacity: 0.85\n}, {\n index: 4,\n opacity: 0.9\n}, {\n index: 3,\n opacity: 0.95\n}, {\n index: 2,\n opacity: 0.97\n}, {\n index: 1,\n opacity: 0.98\n}]; // Wrapper function ported from TinyColor.prototype.toHsv\n// Keep it here because of `hsv.h * 360`\n\nfunction toHsv(_ref) {\n var r = _ref.r,\n g = _ref.g,\n b = _ref.b;\n var hsv = rgbToHsv(r, g, b);\n return {\n h: hsv.h * 360,\n s: hsv.s,\n v: hsv.v\n };\n} // Wrapper function ported from TinyColor.prototype.toHexString\n// Keep it here because of the prefix `#`\n\n\nfunction toHex(_ref2) {\n var r = _ref2.r,\n g = _ref2.g,\n b = _ref2.b;\n return \"#\".concat(rgbToHex(r, g, b, false));\n} // Wrapper function ported from TinyColor.prototype.mix, not treeshakable.\n// Amount in range [0, 1]\n// Assume color1 & color2 has no alpha, since the following src code did so.\n\n\nfunction mix(rgb1, rgb2, amount) {\n var p = amount / 100;\n var rgb = {\n r: (rgb2.r - rgb1.r) * p + rgb1.r,\n g: (rgb2.g - rgb1.g) * p + rgb1.g,\n b: (rgb2.b - rgb1.b) * p + rgb1.b\n };\n return rgb;\n}\n\nfunction getHue(hsv, i, light) {\n var hue; // 根据色相不同,色相转向不同\n\n if (Math.round(hsv.h) >= 60 && Math.round(hsv.h) <= 240) {\n hue = light ? Math.round(hsv.h) - hueStep * i : Math.round(hsv.h) + hueStep * i;\n } else {\n hue = light ? Math.round(hsv.h) + hueStep * i : Math.round(hsv.h) - hueStep * i;\n }\n\n if (hue < 0) {\n hue += 360;\n } else if (hue >= 360) {\n hue -= 360;\n }\n\n return hue;\n}\n\nfunction getSaturation(hsv, i, light) {\n // grey color don't change saturation\n if (hsv.h === 0 && hsv.s === 0) {\n return hsv.s;\n }\n\n var saturation;\n\n if (light) {\n saturation = hsv.s - saturationStep * i;\n } else if (i === darkColorCount) {\n saturation = hsv.s + saturationStep;\n } else {\n saturation = hsv.s + saturationStep2 * i;\n } // 边界值修正\n\n\n if (saturation > 1) {\n saturation = 1;\n } // 第一格的 s 限制在 0.06-0.1 之间\n\n\n if (light && i === lightColorCount && saturation > 0.1) {\n saturation = 0.1;\n }\n\n if (saturation < 0.06) {\n saturation = 0.06;\n }\n\n return Number(saturation.toFixed(2));\n}\n\nfunction getValue(hsv, i, light) {\n var value;\n\n if (light) {\n value = hsv.v + brightnessStep1 * i;\n } else {\n value = hsv.v - brightnessStep2 * i;\n }\n\n if (value > 1) {\n value = 1;\n }\n\n return Number(value.toFixed(2));\n}\n\nfunction generate(color) {\n var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var patterns = [];\n var pColor = inputToRGB(color);\n\n for (var i = lightColorCount; i > 0; i -= 1) {\n var hsv = toHsv(pColor);\n var colorString = toHex(inputToRGB({\n h: getHue(hsv, i, true),\n s: getSaturation(hsv, i, true),\n v: getValue(hsv, i, true)\n }));\n patterns.push(colorString);\n }\n\n patterns.push(toHex(pColor));\n\n for (var _i = 1; _i <= darkColorCount; _i += 1) {\n var _hsv = toHsv(pColor);\n\n var _colorString = toHex(inputToRGB({\n h: getHue(_hsv, _i),\n s: getSaturation(_hsv, _i),\n v: getValue(_hsv, _i)\n }));\n\n patterns.push(_colorString);\n } // dark theme patterns\n\n\n if (opts.theme === 'dark') {\n return darkColorMap.map(function (_ref3) {\n var index = _ref3.index,\n opacity = _ref3.opacity;\n var darkColorString = toHex(mix(inputToRGB(opts.backgroundColor || '#141414'), inputToRGB(patterns[index]), opacity * 100));\n return darkColorString;\n });\n }\n\n return patterns;\n}\n\nvar presetPrimaryColors = {\n red: '#F5222D',\n volcano: '#FA541C',\n orange: '#FA8C16',\n gold: '#FAAD14',\n yellow: '#FADB14',\n lime: '#A0D911',\n green: '#52C41A',\n cyan: '#13C2C2',\n blue: '#1890FF',\n geekblue: '#2F54EB',\n purple: '#722ED1',\n magenta: '#EB2F96',\n grey: '#666666'\n};\nvar presetPalettes = {};\nvar presetDarkPalettes = {};\nObject.keys(presetPrimaryColors).forEach(function (key) {\n presetPalettes[key] = generate(presetPrimaryColors[key]);\n presetPalettes[key].primary = presetPalettes[key][5]; // dark presetPalettes\n\n presetDarkPalettes[key] = generate(presetPrimaryColors[key], {\n theme: 'dark',\n backgroundColor: '#141414'\n });\n presetDarkPalettes[key].primary = presetDarkPalettes[key][5];\n});\nvar red = presetPalettes.red;\nvar volcano = presetPalettes.volcano;\nvar gold = presetPalettes.gold;\nvar orange = presetPalettes.orange;\nvar yellow = presetPalettes.yellow;\nvar lime = presetPalettes.lime;\nvar green = presetPalettes.green;\nvar cyan = presetPalettes.cyan;\nvar blue = presetPalettes.blue;\nvar geekblue = presetPalettes.geekblue;\nvar purple = presetPalettes.purple;\nvar magenta = presetPalettes.magenta;\nvar grey = presetPalettes.grey;\n\nexport { blue, cyan, geekblue, generate, gold, green, grey, lime, magenta, orange, presetDarkPalettes, presetPalettes, presetPrimaryColors, purple, red, volcano, yellow };\n","import { inject, provide, ref } from 'vue';\nvar contextKey = Symbol('iconContext');\nexport var useProvideIconContext = function useProvideIconContext(props) {\n provide(contextKey, props);\n return props;\n};\nexport var useInjectIconContext = function useInjectIconContext() {\n return inject(contextKey, {\n prefixCls: ref('anticon'),\n rootClassName: ref(''),\n csp: ref()\n });\n};","function canUseDom() {\n return !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n}\n\nfunction contains(root, n) {\n if (!root) {\n return false;\n } // Use native if support\n\n\n if (root.contains) {\n return root.contains(n);\n }\n\n return false;\n}\n\nvar APPEND_ORDER = 'data-vc-order';\nvar MARK_KEY = \"vc-icon-key\";\nvar containerCache = new Map();\n\nfunction getMark() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n mark = _ref.mark;\n\n if (mark) {\n return mark.startsWith('data-') ? mark : \"data-\".concat(mark);\n }\n\n return MARK_KEY;\n}\n\nfunction getContainer(option) {\n if (option.attachTo) {\n return option.attachTo;\n }\n\n var head = document.querySelector('head');\n return head || document.body;\n}\n\nfunction getOrder(prepend) {\n if (prepend === 'queue') {\n return 'prependQueue';\n }\n\n return prepend ? 'prepend' : 'append';\n}\n/**\n * Find style which inject by rc-util\n */\n\n\nfunction findStyles(container) {\n return Array.from((containerCache.get(container) || container).children).filter(function (node) {\n return node.tagName === 'STYLE';\n });\n}\n\nexport function injectCSS(css) {\n var option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (!canUseDom()) {\n return null;\n }\n\n var csp = option.csp,\n prepend = option.prepend;\n var styleNode = document.createElement('style');\n styleNode.setAttribute(APPEND_ORDER, getOrder(prepend));\n\n if (csp && csp.nonce) {\n styleNode.nonce = csp.nonce;\n }\n\n styleNode.innerHTML = css;\n var container = getContainer(option);\n var firstChild = container.firstChild;\n\n if (prepend) {\n // If is queue `prepend`, it will prepend first style and then append rest style\n if (prepend === 'queue') {\n var existStyle = findStyles(container).filter(function (node) {\n return ['prepend', 'prependQueue'].includes(node.getAttribute(APPEND_ORDER));\n });\n\n if (existStyle.length) {\n container.insertBefore(styleNode, existStyle[existStyle.length - 1].nextSibling);\n return styleNode;\n }\n } // Use `insertBefore` as `prepend`\n\n\n container.insertBefore(styleNode, firstChild);\n } else {\n container.appendChild(styleNode);\n }\n\n return styleNode;\n}\n\nfunction findExistNode(key) {\n var option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var container = getContainer(option);\n return findStyles(container).find(function (node) {\n return node.getAttribute(getMark(option)) === key;\n });\n}\n\nexport function removeCSS(key) {\n var option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var existNode = findExistNode(key, option);\n\n if (existNode) {\n var container = getContainer(option);\n container.removeChild(existNode);\n }\n}\n/**\n * qiankun will inject `appendChild` to insert into other\n */\n\nfunction syncRealContainer(container, option) {\n var cachedRealContainer = containerCache.get(container); // Find real container when not cached or cached container removed\n\n if (!cachedRealContainer || !contains(document, cachedRealContainer)) {\n var placeholderStyle = injectCSS('', option);\n var parentNode = placeholderStyle.parentNode;\n containerCache.set(container, parentNode);\n container.removeChild(placeholderStyle);\n }\n}\n/**\n * manually clear container cache to avoid global cache in unit testes\n */\n\n\nexport function clearContainerCache() {\n containerCache.clear();\n}\nexport function updateCSS(css, key) {\n var option = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var container = getContainer(option); // Sync real parent\n\n syncRealContainer(container, option);\n var existNode = findExistNode(key, option);\n\n if (existNode) {\n if (option.csp && option.csp.nonce && existNode.nonce !== option.csp.nonce) {\n existNode.nonce = option.csp.nonce;\n }\n\n if (existNode.innerHTML !== css) {\n existNode.innerHTML = css;\n }\n\n return existNode;\n }\n\n var newNode = injectCSS(css, option);\n newNode.setAttribute(getMark(option), key);\n return newNode;\n}","function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { nextTick, h, getCurrentInstance } from 'vue';\nimport { generate as generateColor } from '@ant-design/colors';\nimport { useInjectIconContext } from './components/Context';\nimport { updateCSS } from './dynamicCSS';\nexport function warn(valid, message) {\n // Support uglify\n if (process.env.NODE_ENV !== 'production' && !valid && console !== undefined) {\n console.error(\"Warning: \".concat(message));\n }\n}\nexport function warning(valid, message) {\n warn(valid, \"[@ant-design/icons-vue] \".concat(message));\n}\n\nfunction camelCase(input) {\n return input.replace(/-(.)/g, function (_match, g) {\n return g.toUpperCase();\n });\n} // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n\n\nexport function isIconDefinition(target) {\n return typeof target === 'object' && typeof target.name === 'string' && typeof target.theme === 'string' && (typeof target.icon === 'object' || typeof target.icon === 'function');\n}\nexport function normalizeAttrs() {\n var attrs = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return Object.keys(attrs).reduce(function (acc, key) {\n var val = attrs[key];\n\n switch (key) {\n case 'class':\n acc.className = val;\n delete acc[\"class\"];\n break;\n\n default:\n delete acc[key];\n acc[camelCase(key)] = val;\n }\n\n return acc;\n }, {});\n}\nexport function generate(node, key, rootProps) {\n if (!rootProps) {\n return h(node.tag, _objectSpread({\n key: key\n }, node.attrs), (node.children || []).map(function (child, index) {\n return generate(child, \"\".concat(key, \"-\").concat(node.tag, \"-\").concat(index));\n }));\n }\n\n return h(node.tag, _objectSpread({\n key: key\n }, rootProps, node.attrs), (node.children || []).map(function (child, index) {\n return generate(child, \"\".concat(key, \"-\").concat(node.tag, \"-\").concat(index));\n }));\n}\nexport function getSecondaryColor(primaryColor) {\n // choose the second color\n return generateColor(primaryColor)[0];\n}\nexport function normalizeTwoToneColors(twoToneColor) {\n if (!twoToneColor) {\n return [];\n }\n\n return Array.isArray(twoToneColor) ? twoToneColor : [twoToneColor];\n} // These props make sure that the SVG behaviours like general text.\n// Reference: https://blog.prototypr.io/align-svg-icons-to-text-and-say-goodbye-to-font-icons-d44b3d7b26b4\n\nexport var svgBaseProps = {\n width: '1em',\n height: '1em',\n fill: 'currentColor',\n 'aria-hidden': 'true',\n focusable: 'false'\n};\nexport var iconStyles = \"\\n.anticon {\\n display: inline-block;\\n color: inherit;\\n font-style: normal;\\n line-height: 0;\\n text-align: center;\\n text-transform: none;\\n vertical-align: -0.125em;\\n text-rendering: optimizeLegibility;\\n -webkit-font-smoothing: antialiased;\\n -moz-osx-font-smoothing: grayscale;\\n}\\n\\n.anticon > * {\\n line-height: 1;\\n}\\n\\n.anticon svg {\\n display: inline-block;\\n}\\n\\n.anticon::before {\\n display: none;\\n}\\n\\n.anticon .anticon-icon {\\n display: block;\\n}\\n\\n.anticon[tabindex] {\\n cursor: pointer;\\n}\\n\\n.anticon-spin::before,\\n.anticon-spin {\\n display: inline-block;\\n -webkit-animation: loadingCircle 1s infinite linear;\\n animation: loadingCircle 1s infinite linear;\\n}\\n\\n@-webkit-keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\\n@keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\";\n\nfunction getRoot(ele) {\n return ele && ele.getRootNode && ele.getRootNode();\n}\n/**\n * Check if is in shadowRoot\n */\n\n\nfunction inShadow(ele) {\n return getRoot(ele) instanceof ShadowRoot;\n}\n/**\n * Return shadowRoot if possible\n */\n\n\nfunction getShadowRoot(ele) {\n return inShadow(ele) ? getRoot(ele) : null;\n}\n\nexport var useInsertStyles = function useInsertStyles() {\n var _useInjectIconContext = useInjectIconContext(),\n prefixCls = _useInjectIconContext.prefixCls,\n csp = _useInjectIconContext.csp;\n\n var instance = getCurrentInstance();\n var mergedStyleStr = iconStyles;\n\n if (prefixCls) {\n mergedStyleStr = mergedStyleStr.replace(/anticon/g, prefixCls.value);\n }\n\n nextTick(function () {\n var ele = instance.vnode.el;\n var shadowRoot = getShadowRoot(ele);\n updateCSS(mergedStyleStr, '@ant-design-vue-icons', {\n prepend: true,\n csp: csp.value,\n attachTo: shadowRoot\n });\n });\n};","var _excluded = [\"icon\", \"primaryColor\", \"secondaryColor\"];\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { generate, getSecondaryColor, isIconDefinition, warning } from '../utils';\nvar twoToneColorPalette = {\n primaryColor: '#333',\n secondaryColor: '#E6E6E6',\n calculated: false\n};\n\nfunction setTwoToneColors(_ref) {\n var primaryColor = _ref.primaryColor,\n secondaryColor = _ref.secondaryColor;\n twoToneColorPalette.primaryColor = primaryColor;\n twoToneColorPalette.secondaryColor = secondaryColor || getSecondaryColor(primaryColor);\n twoToneColorPalette.calculated = !!secondaryColor;\n}\n\nfunction getTwoToneColors() {\n return _objectSpread({}, twoToneColorPalette);\n}\n\nvar IconBase = function IconBase(props, context) {\n var _props$context$attrs = _objectSpread({}, props, context.attrs),\n icon = _props$context$attrs.icon,\n primaryColor = _props$context$attrs.primaryColor,\n secondaryColor = _props$context$attrs.secondaryColor,\n restProps = _objectWithoutProperties(_props$context$attrs, _excluded);\n\n var colors = twoToneColorPalette;\n\n if (primaryColor) {\n colors = {\n primaryColor: primaryColor,\n secondaryColor: secondaryColor || getSecondaryColor(primaryColor)\n };\n }\n\n warning(isIconDefinition(icon), \"icon should be icon definiton, but got \".concat(icon));\n\n if (!isIconDefinition(icon)) {\n return null;\n }\n\n var target = icon;\n\n if (target && typeof target.icon === 'function') {\n target = _objectSpread({}, target, {\n icon: target.icon(colors.primaryColor, colors.secondaryColor)\n });\n }\n\n return generate(target.icon, \"svg-\".concat(target.name), _objectSpread({}, restProps, {\n 'data-icon': target.name,\n width: '1em',\n height: '1em',\n fill: 'currentColor',\n 'aria-hidden': 'true'\n })); // },\n};\n\nIconBase.props = {\n icon: Object,\n primaryColor: String,\n secondaryColor: String,\n focusable: String\n};\nIconBase.inheritAttrs = false;\nIconBase.displayName = 'IconBase';\nIconBase.getTwoToneColors = getTwoToneColors;\nIconBase.setTwoToneColors = setTwoToneColors;\nexport default IconBase;","function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nimport VueIcon from './IconBase';\nimport { normalizeTwoToneColors } from '../utils';\nexport function setTwoToneColor(twoToneColor) {\n var _normalizeTwoToneColo = normalizeTwoToneColors(twoToneColor),\n _normalizeTwoToneColo2 = _slicedToArray(_normalizeTwoToneColo, 2),\n primaryColor = _normalizeTwoToneColo2[0],\n secondaryColor = _normalizeTwoToneColo2[1];\n\n return VueIcon.setTwoToneColors({\n primaryColor: primaryColor,\n secondaryColor: secondaryColor\n });\n}\nexport function getTwoToneColor() {\n var colors = VueIcon.getTwoToneColors();\n\n if (!colors.calculated) {\n return colors.primaryColor;\n }\n\n return [colors.primaryColor, colors.secondaryColor];\n}","import { defineComponent } from 'vue';\nimport { useInsertStyles } from '../utils';\nexport var InsertStyles = defineComponent({\n name: 'InsertStyles',\n setup: function setup() {\n useInsertStyles();\n return function () {\n return null;\n };\n }\n});","var _excluded = [\"class\", \"icon\", \"spin\", \"rotate\", \"tabindex\", \"twoToneColor\", \"onClick\"];\nimport { createVNode as _createVNode } from \"vue\";\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport VueIcon from './IconBase';\nimport { getTwoToneColor, setTwoToneColor } from './twoTonePrimaryColor';\nimport { normalizeTwoToneColors } from '../utils';\nimport { blue } from '@ant-design/colors';\nimport { useInjectIconContext } from './Context';\nimport { InsertStyles } from './InsertStyle'; // Initial setting\n\nsetTwoToneColor(blue.primary);\n\nvar Icon = function Icon(props, context) {\n var _classObj;\n\n var _props$context$attrs = _objectSpread({}, props, context.attrs),\n cls = _props$context$attrs[\"class\"],\n icon = _props$context$attrs.icon,\n spin = _props$context$attrs.spin,\n rotate = _props$context$attrs.rotate,\n tabindex = _props$context$attrs.tabindex,\n twoToneColor = _props$context$attrs.twoToneColor,\n onClick = _props$context$attrs.onClick,\n restProps = _objectWithoutProperties(_props$context$attrs, _excluded);\n\n var _useInjectIconContext = useInjectIconContext(),\n prefixCls = _useInjectIconContext.prefixCls,\n rootClassName = _useInjectIconContext.rootClassName;\n\n var classObj = (_classObj = {}, _defineProperty(_classObj, rootClassName.value, !!rootClassName.value), _defineProperty(_classObj, prefixCls.value, true), _defineProperty(_classObj, \"\".concat(prefixCls.value, \"-\").concat(icon.name), Boolean(icon.name)), _defineProperty(_classObj, \"\".concat(prefixCls.value, \"-spin\"), !!spin || icon.name === 'loading'), _classObj);\n var iconTabIndex = tabindex;\n\n if (iconTabIndex === undefined && onClick) {\n iconTabIndex = -1;\n }\n\n var svgStyle = rotate ? {\n msTransform: \"rotate(\".concat(rotate, \"deg)\"),\n transform: \"rotate(\".concat(rotate, \"deg)\")\n } : undefined;\n\n var _normalizeTwoToneColo = normalizeTwoToneColors(twoToneColor),\n _normalizeTwoToneColo2 = _slicedToArray(_normalizeTwoToneColo, 2),\n primaryColor = _normalizeTwoToneColo2[0],\n secondaryColor = _normalizeTwoToneColo2[1];\n\n return _createVNode(\"span\", _objectSpread({\n \"role\": \"img\",\n \"aria-label\": icon.name\n }, restProps, {\n \"onClick\": onClick,\n \"class\": [classObj, cls],\n \"tabindex\": iconTabIndex\n }), [_createVNode(VueIcon, {\n \"icon\": icon,\n \"primaryColor\": primaryColor,\n \"secondaryColor\": secondaryColor,\n \"style\": svgStyle\n }, null), _createVNode(InsertStyles, null, null)]);\n};\n\nIcon.props = {\n spin: Boolean,\n rotate: Number,\n icon: Object,\n twoToneColor: String\n};\nIcon.displayName = 'AntdIcon';\nIcon.inheritAttrs = false;\nIcon.getTwoToneColor = getTwoToneColor;\nIcon.setTwoToneColor = setTwoToneColor;\nexport default Icon;","import { createVNode as _createVNode } from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport LoadingOutlinedSvg from \"@ant-design/icons-svg/es/asn/LoadingOutlined\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar LoadingOutlined = function LoadingOutlined(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _createVNode(AntdIcon, _objectSpread({}, p, {\n \"icon\": LoadingOutlinedSvg\n }), null);\n};\n\nLoadingOutlined.displayName = 'LoadingOutlined';\nLoadingOutlined.inheritAttrs = false;\nexport default LoadingOutlined;","// This icon file is generated automatically.\nvar CloseCircleFilled = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm165.4 618.2l-66-.3L512 563.4l-99.3 118.4-66.1.3c-4.4 0-8-3.5-8-8 0-1.9.7-3.7 1.9-5.2l130.1-155L340.5 359a8.32 8.32 0 01-1.9-5.2c0-4.4 3.6-8 8-8l66.1.3L512 464.6l99.3-118.4 66-.3c4.4 0 8 3.5 8 8 0 1.9-.7 3.7-1.9 5.2L553.5 514l130 155c1.2 1.5 1.9 3.3 1.9 5.2 0 4.4-3.6 8-8 8z\" } }] }, \"name\": \"close-circle\", \"theme\": \"filled\" };\nexport default CloseCircleFilled;\n","import { createVNode as _createVNode } from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport CloseCircleFilledSvg from \"@ant-design/icons-svg/es/asn/CloseCircleFilled\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar CloseCircleFilled = function CloseCircleFilled(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _createVNode(AntdIcon, _objectSpread({}, p, {\n \"icon\": CloseCircleFilledSvg\n }), null);\n};\n\nCloseCircleFilled.displayName = 'CloseCircleFilled';\nCloseCircleFilled.inheritAttrs = false;\nexport default CloseCircleFilled;","// This icon file is generated automatically.\nvar CheckCircleFilled = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm193.5 301.7l-210.6 292a31.8 31.8 0 01-51.7 0L318.5 484.9c-3.8-5.3 0-12.7 6.5-12.7h46.9c10.2 0 19.9 4.9 25.9 13.3l71.2 98.8 157.2-218c6-8.3 15.6-13.3 25.9-13.3H699c6.5 0 10.3 7.4 6.5 12.7z\" } }] }, \"name\": \"check-circle\", \"theme\": \"filled\" };\nexport default CheckCircleFilled;\n","import { createVNode as _createVNode } from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport CheckCircleFilledSvg from \"@ant-design/icons-svg/es/asn/CheckCircleFilled\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar CheckCircleFilled = function CheckCircleFilled(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _createVNode(AntdIcon, _objectSpread({}, p, {\n \"icon\": CheckCircleFilledSvg\n }), null);\n};\n\nCheckCircleFilled.displayName = 'CheckCircleFilled';\nCheckCircleFilled.inheritAttrs = false;\nexport default CheckCircleFilled;","// This icon file is generated automatically.\nvar ExclamationCircleFilled = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm-32 232c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v272c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V296zm32 440a48.01 48.01 0 010-96 48.01 48.01 0 010 96z\" } }] }, \"name\": \"exclamation-circle\", \"theme\": \"filled\" };\nexport default ExclamationCircleFilled;\n","import { createVNode as _createVNode } from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport ExclamationCircleFilledSvg from \"@ant-design/icons-svg/es/asn/ExclamationCircleFilled\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar ExclamationCircleFilled = function ExclamationCircleFilled(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _createVNode(AntdIcon, _objectSpread({}, p, {\n \"icon\": ExclamationCircleFilledSvg\n }), null);\n};\n\nExclamationCircleFilled.displayName = 'ExclamationCircleFilled';\nExclamationCircleFilled.inheritAttrs = false;\nexport default ExclamationCircleFilled;","/* eslint-disable */\n// Inspired by https://github.com/garycourt/murmurhash-js\n// Ported from https://github.com/aappleby/smhasher/blob/61a0530f28277f2e850bfc39600ce61d02b518de/src/MurmurHash2.cpp#L37-L86\nfunction murmur2(str) {\n // 'm' and 'r' are mixing constants generated offline.\n // They're not really 'magic', they just happen to work well.\n // const m = 0x5bd1e995;\n // const r = 24;\n // Initialize the hash\n var h = 0; // Mix 4 bytes at a time into the hash\n\n var k,\n i = 0,\n len = str.length;\n\n for (; len >= 4; ++i, len -= 4) {\n k = str.charCodeAt(i) & 0xff | (str.charCodeAt(++i) & 0xff) << 8 | (str.charCodeAt(++i) & 0xff) << 16 | (str.charCodeAt(++i) & 0xff) << 24;\n k =\n /* Math.imul(k, m): */\n (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16);\n k ^=\n /* k >>> r: */\n k >>> 24;\n h =\n /* Math.imul(k, m): */\n (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16) ^\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n } // Handle the last few bytes of the input array\n\n\n switch (len) {\n case 3:\n h ^= (str.charCodeAt(i + 2) & 0xff) << 16;\n\n case 2:\n h ^= (str.charCodeAt(i + 1) & 0xff) << 8;\n\n case 1:\n h ^= str.charCodeAt(i) & 0xff;\n h =\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n } // Do a few final mixes of the hash to ensure the last few\n // bytes are well-incorporated.\n\n\n h ^= h >>> 13;\n h =\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n return ((h ^ h >>> 15) >>> 0).toString(36);\n}\n\nexport { murmur2 as default };\n","const SPLIT = '%';\nclass Entity {\n constructor(instanceId) {\n /** @private Internal cache map. Do not access this directly */\n this.cache = new Map();\n this.instanceId = instanceId;\n }\n get(keys) {\n return this.cache.get(Array.isArray(keys) ? keys.join(SPLIT) : keys) || null;\n }\n update(keys, valueFn) {\n const path = Array.isArray(keys) ? keys.join(SPLIT) : keys;\n const prevValue = this.cache.get(path);\n const nextValue = valueFn(prevValue);\n if (nextValue === null) {\n this.cache.delete(path);\n } else {\n this.cache.set(path, nextValue);\n }\n }\n}\nexport default Entity;","// https://stackoverflow.com/questions/46176165/ways-to-get-string-literal-type-of-array-values-without-enum-overhead\nexport const tuple = function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return args;\n};\nexport const tupleNum = function () {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n return args;\n};\nexport const withInstall = comp => {\n const c = comp;\n c.install = function (app) {\n app.component(c.displayName || c.name, comp);\n };\n return comp;\n};\nexport function eventType() {\n return {\n type: [Function, Array]\n };\n}\nexport function objectType(defaultVal) {\n return {\n type: Object,\n default: defaultVal\n };\n}\nexport function booleanType(defaultVal) {\n return {\n type: Boolean,\n default: defaultVal\n };\n}\nexport function functionType(defaultVal) {\n return {\n type: Function,\n default: defaultVal\n };\n}\nexport function anyType(defaultVal, required) {\n const type = {\n validator: () => true,\n default: defaultVal\n };\n return required ? type : type;\n}\nexport function vNodeType() {\n return {\n validator: () => true\n };\n}\nexport function arrayType(defaultVal) {\n return {\n type: Array,\n default: defaultVal\n };\n}\nexport function stringType(defaultVal) {\n return {\n type: String,\n default: defaultVal\n };\n}\nexport function someType(types, defaultVal) {\n return types ? {\n type: types,\n default: defaultVal\n } : anyType(defaultVal);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { provide, defineComponent, unref, inject, watch, shallowRef, getCurrentInstance } from 'vue';\nimport CacheEntity from './Cache';\nimport { arrayType, booleanType, objectType, someType, stringType, withInstall } from '../type';\nexport const ATTR_TOKEN = 'data-token-hash';\nexport const ATTR_MARK = 'data-css-hash';\nexport const ATTR_CACHE_PATH = 'data-cache-path';\n// Mark css-in-js instance in style element\nexport const CSS_IN_JS_INSTANCE = '__cssinjs_instance__';\nexport function createCache() {\n const cssinjsInstanceId = Math.random().toString(12).slice(2);\n // Tricky SSR: Move all inline style to the head.\n // PS: We do not recommend tricky mode.\n if (typeof document !== 'undefined' && document.head && document.body) {\n const styles = document.body.querySelectorAll(`style[${ATTR_MARK}]`) || [];\n const {\n firstChild\n } = document.head;\n Array.from(styles).forEach(style => {\n style[CSS_IN_JS_INSTANCE] = style[CSS_IN_JS_INSTANCE] || cssinjsInstanceId;\n // Not force move if no head\n // Not force move if no head\n if (style[CSS_IN_JS_INSTANCE] === cssinjsInstanceId) {\n document.head.insertBefore(style, firstChild);\n }\n });\n // Deduplicate of moved styles\n const styleHash = {};\n Array.from(document.querySelectorAll(`style[${ATTR_MARK}]`)).forEach(style => {\n var _a;\n const hash = style.getAttribute(ATTR_MARK);\n if (styleHash[hash]) {\n if (style[CSS_IN_JS_INSTANCE] === cssinjsInstanceId) {\n (_a = style.parentNode) === null || _a === void 0 ? void 0 : _a.removeChild(style);\n }\n } else {\n styleHash[hash] = true;\n }\n });\n }\n return new CacheEntity(cssinjsInstanceId);\n}\nconst StyleContextKey = Symbol('StyleContextKey');\n// fix: https://github.com/vueComponent/ant-design-vue/issues/7023\nconst getCache = () => {\n var _a, _b, _c;\n const instance = getCurrentInstance();\n let cache;\n if (instance && instance.appContext) {\n const globalCache = (_c = (_b = (_a = instance.appContext) === null || _a === void 0 ? void 0 : _a.config) === null || _b === void 0 ? void 0 : _b.globalProperties) === null || _c === void 0 ? void 0 : _c.__ANTDV_CSSINJS_CACHE__;\n if (globalCache) {\n cache = globalCache;\n } else {\n cache = createCache();\n if (instance.appContext.config.globalProperties) {\n instance.appContext.config.globalProperties.__ANTDV_CSSINJS_CACHE__ = cache;\n }\n }\n } else {\n cache = createCache();\n }\n return cache;\n};\nconst defaultStyleContext = {\n cache: createCache(),\n defaultCache: true,\n hashPriority: 'low'\n};\n// fix: https://github.com/vueComponent/ant-design-vue/issues/6912\nexport const useStyleInject = () => {\n const cache = getCache();\n return inject(StyleContextKey, shallowRef(_extends(_extends({}, defaultStyleContext), {\n cache\n })));\n};\nexport const useStyleProvider = props => {\n const parentContext = useStyleInject();\n const context = shallowRef(_extends(_extends({}, defaultStyleContext), {\n cache: createCache()\n }));\n watch([() => unref(props), parentContext], () => {\n const mergedContext = _extends({}, parentContext.value);\n const propsValue = unref(props);\n Object.keys(propsValue).forEach(key => {\n const value = propsValue[key];\n if (propsValue[key] !== undefined) {\n mergedContext[key] = value;\n }\n });\n const {\n cache\n } = propsValue;\n mergedContext.cache = mergedContext.cache || createCache();\n mergedContext.defaultCache = !cache && parentContext.value.defaultCache;\n context.value = mergedContext;\n }, {\n immediate: true\n });\n provide(StyleContextKey, context);\n return context;\n};\nexport const styleProviderProps = () => ({\n autoClear: booleanType(),\n /** @private Test only. Not work in production. */\n mock: stringType(),\n /**\n * Only set when you need ssr to extract style on you own.\n * If not provided, it will auto create <style /> on the end of Provider in server side.\n */\n cache: objectType(),\n /** Tell children that this context is default generated context */\n defaultCache: booleanType(),\n /** Use `:where` selector to reduce hashId css selector priority */\n hashPriority: stringType(),\n /** Tell cssinjs where to inject style in */\n container: someType(),\n /** Component wil render inline `<style />` for fallback in SSR. Not recommend. */\n ssrInline: booleanType(),\n /** Transform css before inject in document. Please note that `transformers` do not support dynamic update */\n transformers: arrayType(),\n /**\n * Linters to lint css before inject in document.\n * Styles will be linted after transforming.\n * Please note that `linters` do not support dynamic update.\n */\n linters: arrayType()\n});\nexport const StyleProvider = withInstall(defineComponent({\n name: 'AStyleProvider',\n inheritAttrs: false,\n props: styleProviderProps(),\n setup(props, _ref) {\n let {\n slots\n } = _ref;\n useStyleProvider(props);\n return () => {\n var _a;\n return (_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots);\n };\n }\n}));\nexport default {\n useStyleInject,\n useStyleProvider,\n StyleProvider\n};","function useProdHMR() {\n return false;\n}\nlet webpackHMR = false;\nfunction useDevHMR() {\n return webpackHMR;\n}\nexport default process.env.NODE_ENV === 'production' ? useProdHMR : useDevHMR;\n// Webpack `module.hot.accept` do not support any deps update trigger\n// We have to hack handler to force mark as HRM\nif (process.env.NODE_ENV !== 'production' && typeof module !== 'undefined' && module && module.hot && typeof window !== 'undefined') {\n const win = window;\n if (typeof win.webpackHotUpdate === 'function') {\n const originWebpackHotUpdate = win.webpackHotUpdate;\n win.webpackHotUpdate = function () {\n webpackHMR = true;\n setTimeout(() => {\n webpackHMR = false;\n }, 0);\n return originWebpackHotUpdate(...arguments);\n };\n }\n}","import { useStyleInject } from '../StyleContext';\nimport useHMR from './useHMR';\nimport { onBeforeUnmount, watch, watchEffect, shallowRef } from 'vue';\nexport default function useClientCache(prefix, keyPath, cacheFn, onCacheRemove) {\n const styleContext = useStyleInject();\n const fullPathStr = shallowRef('');\n const res = shallowRef();\n watchEffect(() => {\n fullPathStr.value = [prefix, ...keyPath.value].join('%');\n });\n const HMRUpdate = useHMR();\n const clearCache = pathStr => {\n styleContext.value.cache.update(pathStr, prevCache => {\n const [times = 0, cache] = prevCache || [];\n const nextCount = times - 1;\n if (nextCount === 0) {\n onCacheRemove === null || onCacheRemove === void 0 ? void 0 : onCacheRemove(cache, false);\n return null;\n }\n return [times - 1, cache];\n });\n };\n watch(fullPathStr, (newStr, oldStr) => {\n if (oldStr) clearCache(oldStr);\n // Create cache\n styleContext.value.cache.update(newStr, prevCache => {\n const [times = 0, cache] = prevCache || [];\n // HMR should always ignore cache since developer may change it\n let tmpCache = cache;\n if (process.env.NODE_ENV !== 'production' && cache && HMRUpdate) {\n onCacheRemove === null || onCacheRemove === void 0 ? void 0 : onCacheRemove(tmpCache, HMRUpdate);\n tmpCache = null;\n }\n const mergedCache = tmpCache || cacheFn();\n return [times + 1, mergedCache];\n });\n res.value = styleContext.value.cache.get(fullPathStr.value)[1];\n }, {\n immediate: true\n });\n onBeforeUnmount(() => {\n clearCache(fullPathStr.value);\n });\n return res;\n}","function canUseDom() {\n return !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n}\nexport default canUseDom;","export default function contains(root, n) {\n if (!root) {\n return false;\n }\n // Use native if support\n if (root.contains) {\n return root.contains(n);\n }\n return false;\n}","import canUseDom from '../../_util/canUseDom';\nimport contains from './contains';\nconst APPEND_ORDER = 'data-vc-order';\nconst MARK_KEY = `vc-util-key`;\nconst containerCache = new Map();\nfunction getMark() {\n let {\n mark\n } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (mark) {\n return mark.startsWith('data-') ? mark : `data-${mark}`;\n }\n return MARK_KEY;\n}\nfunction getContainer(option) {\n if (option.attachTo) {\n return option.attachTo;\n }\n const head = document.querySelector('head');\n return head || document.body;\n}\nfunction getOrder(prepend) {\n if (prepend === 'queue') {\n return 'prependQueue';\n }\n return prepend ? 'prepend' : 'append';\n}\n/**\n * Find style which inject by rc-util\n */\nfunction findStyles(container) {\n return Array.from((containerCache.get(container) || container).children).filter(node => node.tagName === 'STYLE');\n}\nexport function injectCSS(css) {\n let option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (!canUseDom()) {\n return null;\n }\n const {\n csp,\n prepend\n } = option;\n const styleNode = document.createElement('style');\n styleNode.setAttribute(APPEND_ORDER, getOrder(prepend));\n if (csp === null || csp === void 0 ? void 0 : csp.nonce) {\n styleNode.nonce = csp === null || csp === void 0 ? void 0 : csp.nonce;\n }\n styleNode.innerHTML = css;\n const container = getContainer(option);\n const {\n firstChild\n } = container;\n if (prepend) {\n // If is queue `prepend`, it will prepend first style and then append rest style\n if (prepend === 'queue') {\n const existStyle = findStyles(container).filter(node => ['prepend', 'prependQueue'].includes(node.getAttribute(APPEND_ORDER)));\n if (existStyle.length) {\n container.insertBefore(styleNode, existStyle[existStyle.length - 1].nextSibling);\n return styleNode;\n }\n }\n // Use `insertBefore` as `prepend`\n container.insertBefore(styleNode, firstChild);\n } else {\n container.appendChild(styleNode);\n }\n return styleNode;\n}\nfunction findExistNode(key) {\n let option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const container = getContainer(option);\n return findStyles(container).find(node => node.getAttribute(getMark(option)) === key);\n}\nexport function removeCSS(key) {\n let option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const existNode = findExistNode(key, option);\n if (existNode) {\n const container = getContainer(option);\n container.removeChild(existNode);\n }\n}\n/**\n * qiankun will inject `appendChild` to insert into other\n */\nfunction syncRealContainer(container, option) {\n const cachedRealContainer = containerCache.get(container);\n // Find real container when not cached or cached container removed\n if (!cachedRealContainer || !contains(document, cachedRealContainer)) {\n const placeholderStyle = injectCSS('', option);\n const {\n parentNode\n } = placeholderStyle;\n containerCache.set(container, parentNode);\n container.removeChild(placeholderStyle);\n }\n}\n/**\n * manually clear container cache to avoid global cache in unit testes\n */\nexport function clearContainerCache() {\n containerCache.clear();\n}\nexport function updateCSS(css, key) {\n let option = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var _a, _b, _c;\n const container = getContainer(option);\n // Sync real parent\n syncRealContainer(container, option);\n const existNode = findExistNode(key, option);\n if (existNode) {\n if (((_a = option.csp) === null || _a === void 0 ? void 0 : _a.nonce) && existNode.nonce !== ((_b = option.csp) === null || _b === void 0 ? void 0 : _b.nonce)) {\n existNode.nonce = (_c = option.csp) === null || _c === void 0 ? void 0 : _c.nonce;\n }\n if (existNode.innerHTML !== css) {\n existNode.innerHTML = css;\n }\n return existNode;\n }\n const newNode = injectCSS(css, option);\n newNode.setAttribute(getMark(option), key);\n return newNode;\n}","export function sameDerivativeOption(left, right) {\n if (left.length !== right.length) {\n return false;\n }\n for (let i = 0; i < left.length; i++) {\n if (left[i] !== right[i]) {\n return false;\n }\n }\n return true;\n}\nexport default class ThemeCache {\n constructor() {\n this.cache = new Map();\n this.keys = [];\n this.cacheCallTimes = 0;\n }\n size() {\n return this.keys.length;\n }\n internalGet(derivativeOption) {\n let updateCallTimes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n let cache = {\n map: this.cache\n };\n derivativeOption.forEach(derivative => {\n var _a;\n if (!cache) {\n cache = undefined;\n } else {\n cache = (_a = cache === null || cache === void 0 ? void 0 : cache.map) === null || _a === void 0 ? void 0 : _a.get(derivative);\n }\n });\n if ((cache === null || cache === void 0 ? void 0 : cache.value) && updateCallTimes) {\n cache.value[1] = this.cacheCallTimes++;\n }\n return cache === null || cache === void 0 ? void 0 : cache.value;\n }\n get(derivativeOption) {\n var _a;\n return (_a = this.internalGet(derivativeOption, true)) === null || _a === void 0 ? void 0 : _a[0];\n }\n has(derivativeOption) {\n return !!this.internalGet(derivativeOption);\n }\n set(derivativeOption, value) {\n // New cache\n if (!this.has(derivativeOption)) {\n if (this.size() + 1 > ThemeCache.MAX_CACHE_SIZE + ThemeCache.MAX_CACHE_OFFSET) {\n const [targetKey] = this.keys.reduce((result, key) => {\n const [, callTimes] = result;\n if (this.internalGet(key)[1] < callTimes) {\n return [key, this.internalGet(key)[1]];\n }\n return result;\n }, [this.keys[0], this.cacheCallTimes]);\n this.delete(targetKey);\n }\n this.keys.push(derivativeOption);\n }\n let cache = this.cache;\n derivativeOption.forEach((derivative, index) => {\n if (index === derivativeOption.length - 1) {\n cache.set(derivative, {\n value: [value, this.cacheCallTimes++]\n });\n } else {\n const cacheValue = cache.get(derivative);\n if (!cacheValue) {\n cache.set(derivative, {\n map: new Map()\n });\n } else if (!cacheValue.map) {\n cacheValue.map = new Map();\n }\n cache = cache.get(derivative).map;\n }\n });\n }\n deleteByPath(currentCache, derivatives) {\n var _a;\n const cache = currentCache.get(derivatives[0]);\n if (derivatives.length === 1) {\n if (!cache.map) {\n currentCache.delete(derivatives[0]);\n } else {\n currentCache.set(derivatives[0], {\n map: cache.map\n });\n }\n return (_a = cache.value) === null || _a === void 0 ? void 0 : _a[0];\n }\n const result = this.deleteByPath(cache.map, derivatives.slice(1));\n if ((!cache.map || cache.map.size === 0) && !cache.value) {\n currentCache.delete(derivatives[0]);\n }\n return result;\n }\n delete(derivativeOption) {\n // If cache exists\n if (this.has(derivativeOption)) {\n this.keys = this.keys.filter(item => !sameDerivativeOption(item, derivativeOption));\n return this.deleteByPath(this.cache, derivativeOption);\n }\n return undefined;\n }\n}\nThemeCache.MAX_CACHE_SIZE = 20;\nThemeCache.MAX_CACHE_OFFSET = 5;","import warning from '../../warning';\nlet uuid = 0;\n/**\n * Theme with algorithms to derive tokens from design tokens.\n * Use `createTheme` first which will help to manage the theme instance cache.\n */\nexport default class Theme {\n constructor(derivatives) {\n this.derivatives = Array.isArray(derivatives) ? derivatives : [derivatives];\n this.id = uuid;\n if (derivatives.length === 0) {\n warning(derivatives.length > 0, '[Ant Design Vue CSS-in-JS] Theme should have at least one derivative function.');\n }\n uuid += 1;\n }\n getDerivativeToken(token) {\n return this.derivatives.reduce((result, derivative) => derivative(token, result), undefined);\n }\n}","import ThemeCache from './ThemeCache';\nimport Theme from './Theme';\nconst cacheThemes = new ThemeCache();\n/**\n * Same as new Theme, but will always return same one if `derivative` not changed.\n */\nexport default function createTheme(derivatives) {\n const derivativeArr = Array.isArray(derivatives) ? derivatives : [derivatives];\n // Create new theme if not exist\n if (!cacheThemes.has(derivativeArr)) {\n cacheThemes.set(derivativeArr, new Theme(derivativeArr));\n }\n // Get theme from cache and return\n return cacheThemes.get(derivativeArr);\n}","import hash from '@emotion/hash';\nimport { removeCSS, updateCSS } from '../../vc-util/Dom/dynamicCSS';\nimport canUseDom from '../canUseDom';\nimport { Theme } from './theme';\n// Create a cache here to avoid always loop generate\nconst flattenTokenCache = new WeakMap();\nexport function flattenToken(token) {\n let str = flattenTokenCache.get(token) || '';\n if (!str) {\n Object.keys(token).forEach(key => {\n const value = token[key];\n str += key;\n if (value instanceof Theme) {\n str += value.id;\n } else if (value && typeof value === 'object') {\n str += flattenToken(value);\n } else {\n str += value;\n }\n });\n // Put in cache\n flattenTokenCache.set(token, str);\n }\n return str;\n}\n/**\n * Convert derivative token to key string\n */\nexport function token2key(token, salt) {\n return hash(`${salt}_${flattenToken(token)}`);\n}\nconst randomSelectorKey = `random-${Date.now()}-${Math.random()}`.replace(/\\./g, '');\n// Magic `content` for detect selector support\nconst checkContent = '_bAmBoO_';\nfunction supportSelector(styleStr, handleElement, supportCheck) {\n var _a, _b;\n if (canUseDom()) {\n updateCSS(styleStr, randomSelectorKey);\n const ele = document.createElement('div');\n ele.style.position = 'fixed';\n ele.style.left = '0';\n ele.style.top = '0';\n handleElement === null || handleElement === void 0 ? void 0 : handleElement(ele);\n document.body.appendChild(ele);\n if (process.env.NODE_ENV !== 'production') {\n ele.innerHTML = 'Test';\n ele.style.zIndex = '9999999';\n }\n const support = supportCheck ? supportCheck(ele) : (_a = getComputedStyle(ele).content) === null || _a === void 0 ? void 0 : _a.includes(checkContent);\n (_b = ele.parentNode) === null || _b === void 0 ? void 0 : _b.removeChild(ele);\n removeCSS(randomSelectorKey);\n return support;\n }\n return false;\n}\nlet canLayer = undefined;\nexport function supportLayer() {\n if (canLayer === undefined) {\n canLayer = supportSelector(`@layer ${randomSelectorKey} { .${randomSelectorKey} { content: \"${checkContent}\"!important; } }`, ele => {\n ele.className = randomSelectorKey;\n });\n }\n return canLayer;\n}\nlet canWhere = undefined;\nexport function supportWhere() {\n if (canWhere === undefined) {\n canWhere = supportSelector(`:where(.${randomSelectorKey}) { content: \"${checkContent}\"!important; }`, ele => {\n ele.className = randomSelectorKey;\n });\n }\n return canWhere;\n}\nlet canLogic = undefined;\nexport function supportLogicProps() {\n if (canLogic === undefined) {\n canLogic = supportSelector(`.${randomSelectorKey} { inset-block: 93px !important; }`, ele => {\n ele.className = randomSelectorKey;\n }, ele => getComputedStyle(ele).bottom === '93px');\n }\n return canLogic;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport hash from '@emotion/hash';\nimport { ATTR_TOKEN, CSS_IN_JS_INSTANCE, useStyleInject } from '../StyleContext';\nimport useGlobalCache from './useGlobalCache';\nimport { flattenToken, token2key } from '../util';\nimport { ref, computed } from 'vue';\nconst EMPTY_OVERRIDE = {};\nconst isProduction = process.env.NODE_ENV === 'production';\n// nuxt generate when NODE_ENV is prerender\nconst isPrerender = process.env.NODE_ENV === 'prerender';\n// Generate different prefix to make user selector break in production env.\n// This helps developer not to do style override directly on the hash id.\nconst hashPrefix = !isProduction && !isPrerender ? 'css-dev-only-do-not-override' : 'css';\nconst tokenKeys = new Map();\nfunction recordCleanToken(tokenKey) {\n tokenKeys.set(tokenKey, (tokenKeys.get(tokenKey) || 0) + 1);\n}\nfunction removeStyleTags(key, instanceId) {\n if (typeof document !== 'undefined') {\n const styles = document.querySelectorAll(`style[${ATTR_TOKEN}=\"${key}\"]`);\n styles.forEach(style => {\n var _a;\n if (style[CSS_IN_JS_INSTANCE] === instanceId) {\n (_a = style.parentNode) === null || _a === void 0 ? void 0 : _a.removeChild(style);\n }\n });\n }\n}\nconst TOKEN_THRESHOLD = 0;\n// Remove will check current keys first\nfunction cleanTokenStyle(tokenKey, instanceId) {\n tokenKeys.set(tokenKey, (tokenKeys.get(tokenKey) || 0) - 1);\n const tokenKeyList = Array.from(tokenKeys.keys());\n const cleanableKeyList = tokenKeyList.filter(key => {\n const count = tokenKeys.get(key) || 0;\n return count <= 0;\n });\n // Should keep tokens under threshold for not to insert style too often\n if (tokenKeyList.length - cleanableKeyList.length > TOKEN_THRESHOLD) {\n cleanableKeyList.forEach(key => {\n removeStyleTags(key, instanceId);\n tokenKeys.delete(key);\n });\n }\n}\nexport const getComputedToken = (originToken, overrideToken, theme, format) => {\n const derivativeToken = theme.getDerivativeToken(originToken);\n // Merge with override\n let mergedDerivativeToken = _extends(_extends({}, derivativeToken), overrideToken);\n // Format if needed\n if (format) {\n mergedDerivativeToken = format(mergedDerivativeToken);\n }\n return mergedDerivativeToken;\n};\n/**\n * Cache theme derivative token as global shared one\n * @param theme Theme entity\n * @param tokens List of tokens, used for cache. Please do not dynamic generate object directly\n * @param option Additional config\n * @returns Call Theme.getDerivativeToken(tokenObject) to get token\n */\nexport default function useCacheToken(theme, tokens) {\n let option = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : ref({});\n const style = useStyleInject();\n // Basic - We do basic cache here\n const mergedToken = computed(() => _extends({}, ...tokens.value));\n const tokenStr = computed(() => flattenToken(mergedToken.value));\n const overrideTokenStr = computed(() => flattenToken(option.value.override || EMPTY_OVERRIDE));\n const cachedToken = useGlobalCache('token', computed(() => [option.value.salt || '', theme.value.id, tokenStr.value, overrideTokenStr.value]), () => {\n const {\n salt = '',\n override = EMPTY_OVERRIDE,\n formatToken,\n getComputedToken: compute\n } = option.value;\n const mergedDerivativeToken = compute ? compute(mergedToken.value, override, theme.value) : getComputedToken(mergedToken.value, override, theme.value, formatToken);\n // Optimize for `useStyleRegister` performance\n const tokenKey = token2key(mergedDerivativeToken, salt);\n mergedDerivativeToken._tokenKey = tokenKey;\n recordCleanToken(tokenKey);\n const hashId = `${hashPrefix}-${hash(tokenKey)}`;\n mergedDerivativeToken._hashId = hashId; // Not used\n return [mergedDerivativeToken, hashId];\n }, cache => {\n var _a;\n // Remove token will remove all related style\n cleanTokenStyle(cache[0]._tokenKey, (_a = style.value) === null || _a === void 0 ? void 0 : _a.cache.instanceId);\n });\n return cachedToken;\n}","var unitlessKeys = {\n animationIterationCount: 1,\n aspectRatio: 1,\n borderImageOutset: 1,\n borderImageSlice: 1,\n borderImageWidth: 1,\n boxFlex: 1,\n boxFlexGroup: 1,\n boxOrdinalGroup: 1,\n columnCount: 1,\n columns: 1,\n flex: 1,\n flexGrow: 1,\n flexPositive: 1,\n flexShrink: 1,\n flexNegative: 1,\n flexOrder: 1,\n gridRow: 1,\n gridRowEnd: 1,\n gridRowSpan: 1,\n gridRowStart: 1,\n gridColumn: 1,\n gridColumnEnd: 1,\n gridColumnSpan: 1,\n gridColumnStart: 1,\n msGridRow: 1,\n msGridRowSpan: 1,\n msGridColumn: 1,\n msGridColumnSpan: 1,\n fontWeight: 1,\n lineHeight: 1,\n opacity: 1,\n order: 1,\n orphans: 1,\n tabSize: 1,\n widows: 1,\n zIndex: 1,\n zoom: 1,\n WebkitLineClamp: 1,\n // SVG-related properties\n fillOpacity: 1,\n floodOpacity: 1,\n stopOpacity: 1,\n strokeDasharray: 1,\n strokeDashoffset: 1,\n strokeMiterlimit: 1,\n strokeOpacity: 1,\n strokeWidth: 1\n};\n\nexport { unitlessKeys as default };\n","export var MS = '-ms-'\nexport var MOZ = '-moz-'\nexport var WEBKIT = '-webkit-'\n\nexport var COMMENT = 'comm'\nexport var RULESET = 'rule'\nexport var DECLARATION = 'decl'\n\nexport var PAGE = '@page'\nexport var MEDIA = '@media'\nexport var IMPORT = '@import'\nexport var CHARSET = '@charset'\nexport var VIEWPORT = '@viewport'\nexport var SUPPORTS = '@supports'\nexport var DOCUMENT = '@document'\nexport var NAMESPACE = '@namespace'\nexport var KEYFRAMES = '@keyframes'\nexport var FONT_FACE = '@font-face'\nexport var COUNTER_STYLE = '@counter-style'\nexport var FONT_FEATURE_VALUES = '@font-feature-values'\nexport var LAYER = '@layer'\n","/**\n * @param {number}\n * @return {number}\n */\nexport var abs = Math.abs\n\n/**\n * @param {number}\n * @return {string}\n */\nexport var from = String.fromCharCode\n\n/**\n * @param {object}\n * @return {object}\n */\nexport var assign = Object.assign\n\n/**\n * @param {string} value\n * @param {number} length\n * @return {number}\n */\nexport function hash (value, length) {\n\treturn charat(value, 0) ^ 45 ? (((((((length << 2) ^ charat(value, 0)) << 2) ^ charat(value, 1)) << 2) ^ charat(value, 2)) << 2) ^ charat(value, 3) : 0\n}\n\n/**\n * @param {string} value\n * @return {string}\n */\nexport function trim (value) {\n\treturn value.trim()\n}\n\n/**\n * @param {string} value\n * @param {RegExp} pattern\n * @return {string?}\n */\nexport function match (value, pattern) {\n\treturn (value = pattern.exec(value)) ? value[0] : value\n}\n\n/**\n * @param {string} value\n * @param {(string|RegExp)} pattern\n * @param {string} replacement\n * @return {string}\n */\nexport function replace (value, pattern, replacement) {\n\treturn value.replace(pattern, replacement)\n}\n\n/**\n * @param {string} value\n * @param {string} search\n * @return {number}\n */\nexport function indexof (value, search) {\n\treturn value.indexOf(search)\n}\n\n/**\n * @param {string} value\n * @param {number} index\n * @return {number}\n */\nexport function charat (value, index) {\n\treturn value.charCodeAt(index) | 0\n}\n\n/**\n * @param {string} value\n * @param {number} begin\n * @param {number} end\n * @return {string}\n */\nexport function substr (value, begin, end) {\n\treturn value.slice(begin, end)\n}\n\n/**\n * @param {string} value\n * @return {number}\n */\nexport function strlen (value) {\n\treturn value.length\n}\n\n/**\n * @param {any[]} value\n * @return {number}\n */\nexport function sizeof (value) {\n\treturn value.length\n}\n\n/**\n * @param {any} value\n * @param {any[]} array\n * @return {any}\n */\nexport function append (value, array) {\n\treturn array.push(value), value\n}\n\n/**\n * @param {string[]} array\n * @param {function} callback\n * @return {string}\n */\nexport function combine (array, callback) {\n\treturn array.map(callback).join('')\n}\n","import {from, trim, charat, strlen, substr, append, assign} from './Utility.js'\n\nexport var line = 1\nexport var column = 1\nexport var length = 0\nexport var position = 0\nexport var character = 0\nexport var characters = ''\n\n/**\n * @param {string} value\n * @param {object | null} root\n * @param {object | null} parent\n * @param {string} type\n * @param {string[] | string} props\n * @param {object[] | string} children\n * @param {number} length\n */\nexport function node (value, root, parent, type, props, children, length) {\n\treturn {value: value, root: root, parent: parent, type: type, props: props, children: children, line: line, column: column, length: length, return: ''}\n}\n\n/**\n * @param {object} root\n * @param {object} props\n * @return {object}\n */\nexport function copy (root, props) {\n\treturn assign(node('', null, null, '', null, null, 0), root, {length: -root.length}, props)\n}\n\n/**\n * @return {number}\n */\nexport function char () {\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function prev () {\n\tcharacter = position > 0 ? charat(characters, --position) : 0\n\n\tif (column--, character === 10)\n\t\tcolumn = 1, line--\n\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function next () {\n\tcharacter = position < length ? charat(characters, position++) : 0\n\n\tif (column++, character === 10)\n\t\tcolumn = 1, line++\n\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function peek () {\n\treturn charat(characters, position)\n}\n\n/**\n * @return {number}\n */\nexport function caret () {\n\treturn position\n}\n\n/**\n * @param {number} begin\n * @param {number} end\n * @return {string}\n */\nexport function slice (begin, end) {\n\treturn substr(characters, begin, end)\n}\n\n/**\n * @param {number} type\n * @return {number}\n */\nexport function token (type) {\n\tswitch (type) {\n\t\t// \\0 \\t \\n \\r \\s whitespace token\n\t\tcase 0: case 9: case 10: case 13: case 32:\n\t\t\treturn 5\n\t\t// ! + , / > @ ~ isolate token\n\t\tcase 33: case 43: case 44: case 47: case 62: case 64: case 126:\n\t\t// ; { } breakpoint token\n\t\tcase 59: case 123: case 125:\n\t\t\treturn 4\n\t\t// : accompanied token\n\t\tcase 58:\n\t\t\treturn 3\n\t\t// \" ' ( [ opening delimit token\n\t\tcase 34: case 39: case 40: case 91:\n\t\t\treturn 2\n\t\t// ) ] closing delimit token\n\t\tcase 41: case 93:\n\t\t\treturn 1\n\t}\n\n\treturn 0\n}\n\n/**\n * @param {string} value\n * @return {any[]}\n */\nexport function alloc (value) {\n\treturn line = column = 1, length = strlen(characters = value), position = 0, []\n}\n\n/**\n * @param {any} value\n * @return {any}\n */\nexport function dealloc (value) {\n\treturn characters = '', value\n}\n\n/**\n * @param {number} type\n * @return {string}\n */\nexport function delimit (type) {\n\treturn trim(slice(position - 1, delimiter(type === 91 ? type + 2 : type === 40 ? type + 1 : type)))\n}\n\n/**\n * @param {string} value\n * @return {string[]}\n */\nexport function tokenize (value) {\n\treturn dealloc(tokenizer(alloc(value)))\n}\n\n/**\n * @param {number} type\n * @return {string}\n */\nexport function whitespace (type) {\n\twhile (character = peek())\n\t\tif (character < 33)\n\t\t\tnext()\n\t\telse\n\t\t\tbreak\n\n\treturn token(type) > 2 || token(character) > 3 ? '' : ' '\n}\n\n/**\n * @param {string[]} children\n * @return {string[]}\n */\nexport function tokenizer (children) {\n\twhile (next())\n\t\tswitch (token(character)) {\n\t\t\tcase 0: append(identifier(position - 1), children)\n\t\t\t\tbreak\n\t\t\tcase 2: append(delimit(character), children)\n\t\t\t\tbreak\n\t\t\tdefault: append(from(character), children)\n\t\t}\n\n\treturn children\n}\n\n/**\n * @param {number} index\n * @param {number} count\n * @return {string}\n */\nexport function escaping (index, count) {\n\twhile (--count && next())\n\t\t// not 0-9 A-F a-f\n\t\tif (character < 48 || character > 102 || (character > 57 && character < 65) || (character > 70 && character < 97))\n\t\t\tbreak\n\n\treturn slice(index, caret() + (count < 6 && peek() == 32 && next() == 32))\n}\n\n/**\n * @param {number} type\n * @return {number}\n */\nexport function delimiter (type) {\n\twhile (next())\n\t\tswitch (character) {\n\t\t\t// ] ) \" '\n\t\t\tcase type:\n\t\t\t\treturn position\n\t\t\t// \" '\n\t\t\tcase 34: case 39:\n\t\t\t\tif (type !== 34 && type !== 39)\n\t\t\t\t\tdelimiter(character)\n\t\t\t\tbreak\n\t\t\t// (\n\t\t\tcase 40:\n\t\t\t\tif (type === 41)\n\t\t\t\t\tdelimiter(type)\n\t\t\t\tbreak\n\t\t\t// \\\n\t\t\tcase 92:\n\t\t\t\tnext()\n\t\t\t\tbreak\n\t\t}\n\n\treturn position\n}\n\n/**\n * @param {number} type\n * @param {number} index\n * @return {number}\n */\nexport function commenter (type, index) {\n\twhile (next())\n\t\t// //\n\t\tif (type + character === 47 + 10)\n\t\t\tbreak\n\t\t// /*\n\t\telse if (type + character === 42 + 42 && peek() === 47)\n\t\t\tbreak\n\n\treturn '/*' + slice(index, position - 1) + '*' + from(type === 47 ? type : next())\n}\n\n/**\n * @param {number} index\n * @return {string}\n */\nexport function identifier (index) {\n\twhile (!token(peek()))\n\t\tnext()\n\n\treturn slice(index, position)\n}\n","import {COMMENT, RULESET, DECLARATION} from './Enum.js'\nimport {abs, charat, trim, from, sizeof, strlen, substr, append, replace, indexof} from './Utility.js'\nimport {node, char, prev, next, peek, caret, alloc, dealloc, delimit, whitespace, escaping, identifier, commenter} from './Tokenizer.js'\n\n/**\n * @param {string} value\n * @return {object[]}\n */\nexport function compile (value) {\n\treturn dealloc(parse('', null, null, null, [''], value = alloc(value), 0, [0], value))\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {string[]} rule\n * @param {string[]} rules\n * @param {string[]} rulesets\n * @param {number[]} pseudo\n * @param {number[]} points\n * @param {string[]} declarations\n * @return {object}\n */\nexport function parse (value, root, parent, rule, rules, rulesets, pseudo, points, declarations) {\n\tvar index = 0\n\tvar offset = 0\n\tvar length = pseudo\n\tvar atrule = 0\n\tvar property = 0\n\tvar previous = 0\n\tvar variable = 1\n\tvar scanning = 1\n\tvar ampersand = 1\n\tvar character = 0\n\tvar type = ''\n\tvar props = rules\n\tvar children = rulesets\n\tvar reference = rule\n\tvar characters = type\n\n\twhile (scanning)\n\t\tswitch (previous = character, character = next()) {\n\t\t\t// (\n\t\t\tcase 40:\n\t\t\t\tif (previous != 108 && charat(characters, length - 1) == 58) {\n\t\t\t\t\tif (indexof(characters += replace(delimit(character), '&', '&\\f'), '&\\f') != -1)\n\t\t\t\t\t\tampersand = -1\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t// \" ' [\n\t\t\tcase 34: case 39: case 91:\n\t\t\t\tcharacters += delimit(character)\n\t\t\t\tbreak\n\t\t\t// \\t \\n \\r \\s\n\t\t\tcase 9: case 10: case 13: case 32:\n\t\t\t\tcharacters += whitespace(previous)\n\t\t\t\tbreak\n\t\t\t// \\\n\t\t\tcase 92:\n\t\t\t\tcharacters += escaping(caret() - 1, 7)\n\t\t\t\tcontinue\n\t\t\t// /\n\t\t\tcase 47:\n\t\t\t\tswitch (peek()) {\n\t\t\t\t\tcase 42: case 47:\n\t\t\t\t\t\tappend(comment(commenter(next(), caret()), root, parent), declarations)\n\t\t\t\t\t\tbreak\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tcharacters += '/'\n\t\t\t\t}\n\t\t\t\tbreak\n\t\t\t// {\n\t\t\tcase 123 * variable:\n\t\t\t\tpoints[index++] = strlen(characters) * ampersand\n\t\t\t// } ; \\0\n\t\t\tcase 125 * variable: case 59: case 0:\n\t\t\t\tswitch (character) {\n\t\t\t\t\t// \\0 }\n\t\t\t\t\tcase 0: case 125: scanning = 0\n\t\t\t\t\t// ;\n\t\t\t\t\tcase 59 + offset: if (ampersand == -1) characters = replace(characters, /\\f/g, '')\n\t\t\t\t\t\tif (property > 0 && (strlen(characters) - length))\n\t\t\t\t\t\t\tappend(property > 32 ? declaration(characters + ';', rule, parent, length - 1) : declaration(replace(characters, ' ', '') + ';', rule, parent, length - 2), declarations)\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// @ ;\n\t\t\t\t\tcase 59: characters += ';'\n\t\t\t\t\t// { rule/at-rule\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tappend(reference = ruleset(characters, root, parent, index, offset, rules, points, type, props = [], children = [], length), rulesets)\n\n\t\t\t\t\t\tif (character === 123)\n\t\t\t\t\t\t\tif (offset === 0)\n\t\t\t\t\t\t\t\tparse(characters, root, reference, reference, props, rulesets, length, points, children)\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\tswitch (atrule === 99 && charat(characters, 3) === 110 ? 100 : atrule) {\n\t\t\t\t\t\t\t\t\t// d l m s\n\t\t\t\t\t\t\t\t\tcase 100: case 108: case 109: case 115:\n\t\t\t\t\t\t\t\t\t\tparse(value, reference, reference, rule && append(ruleset(value, reference, reference, 0, 0, rules, points, type, rules, props = [], length), children), rules, children, length, points, rule ? props : children)\n\t\t\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\tparse(characters, reference, reference, reference, [''], children, 0, points, children)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tindex = offset = property = 0, variable = ampersand = 1, type = characters = '', length = pseudo\n\t\t\t\tbreak\n\t\t\t// :\n\t\t\tcase 58:\n\t\t\t\tlength = 1 + strlen(characters), property = previous\n\t\t\tdefault:\n\t\t\t\tif (variable < 1)\n\t\t\t\t\tif (character == 123)\n\t\t\t\t\t\t--variable\n\t\t\t\t\telse if (character == 125 && variable++ == 0 && prev() == 125)\n\t\t\t\t\t\tcontinue\n\n\t\t\t\tswitch (characters += from(character), character * variable) {\n\t\t\t\t\t// &\n\t\t\t\t\tcase 38:\n\t\t\t\t\t\tampersand = offset > 0 ? 1 : (characters += '\\f', -1)\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// ,\n\t\t\t\t\tcase 44:\n\t\t\t\t\t\tpoints[index++] = (strlen(characters) - 1) * ampersand, ampersand = 1\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// @\n\t\t\t\t\tcase 64:\n\t\t\t\t\t\t// -\n\t\t\t\t\t\tif (peek() === 45)\n\t\t\t\t\t\t\tcharacters += delimit(next())\n\n\t\t\t\t\t\tatrule = peek(), offset = length = strlen(type = characters += identifier(caret())), character++\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// -\n\t\t\t\t\tcase 45:\n\t\t\t\t\t\tif (previous === 45 && strlen(characters) == 2)\n\t\t\t\t\t\t\tvariable = 0\n\t\t\t\t}\n\t\t}\n\n\treturn rulesets\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {number} index\n * @param {number} offset\n * @param {string[]} rules\n * @param {number[]} points\n * @param {string} type\n * @param {string[]} props\n * @param {string[]} children\n * @param {number} length\n * @return {object}\n */\nexport function ruleset (value, root, parent, index, offset, rules, points, type, props, children, length) {\n\tvar post = offset - 1\n\tvar rule = offset === 0 ? rules : ['']\n\tvar size = sizeof(rule)\n\n\tfor (var i = 0, j = 0, k = 0; i < index; ++i)\n\t\tfor (var x = 0, y = substr(value, post + 1, post = abs(j = points[i])), z = value; x < size; ++x)\n\t\t\tif (z = trim(j > 0 ? rule[x] + ' ' + y : replace(y, /&\\f/g, rule[x])))\n\t\t\t\tprops[k++] = z\n\n\treturn node(value, root, parent, offset === 0 ? RULESET : type, props, children, length)\n}\n\n/**\n * @param {number} value\n * @param {object} root\n * @param {object?} parent\n * @return {object}\n */\nexport function comment (value, root, parent) {\n\treturn node(value, root, parent, COMMENT, from(char()), substr(value, 2, -2), 0)\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {number} length\n * @return {object}\n */\nexport function declaration (value, root, parent, length) {\n\treturn node(value, root, parent, DECLARATION, substr(value, 0, length), substr(value, length + 1, -1), length)\n}\n","import {IMPORT, LAYER, COMMENT, RULESET, DECLARATION, KEYFRAMES} from './Enum.js'\nimport {strlen, sizeof} from './Utility.js'\n\n/**\n * @param {object[]} children\n * @param {function} callback\n * @return {string}\n */\nexport function serialize (children, callback) {\n\tvar output = ''\n\tvar length = sizeof(children)\n\n\tfor (var i = 0; i < length; i++)\n\t\toutput += callback(children[i], i, children, callback) || ''\n\n\treturn output\n}\n\n/**\n * @param {object} element\n * @param {number} index\n * @param {object[]} children\n * @param {function} callback\n * @return {string}\n */\nexport function stringify (element, index, children, callback) {\n\tswitch (element.type) {\n\t\tcase LAYER: if (element.children.length) break\n\t\tcase IMPORT: case DECLARATION: return element.return = element.return || element.value\n\t\tcase COMMENT: return ''\n\t\tcase KEYFRAMES: return element.return = element.value + '{' + serialize(element.children, callback) + '}'\n\t\tcase RULESET: element.value = element.props.join(',')\n\t}\n\n\treturn strlen(children = serialize(element.children, callback)) ? element.return = element.value + '{' + children + '}' : ''\n}\n","import devWarning from '../../../vc-util/warning';\nexport function lintWarning(message, info) {\n const {\n path,\n parentSelectors\n } = info;\n devWarning(false, `[Ant Design Vue CSS-in-JS] ${path ? `Error in '${path}': ` : ''}${message}${parentSelectors.length ? ` Selector info: ${parentSelectors.join(' -> ')}` : ''}`);\n}","import { lintWarning } from './utils';\nconst linter = (key, value, info) => {\n if (key === 'content') {\n // From emotion: https://github.com/emotion-js/emotion/blob/main/packages/serialize/src/index.js#L63\n const contentValuePattern = /(attr|counters?|url|(((repeating-)?(linear|radial))|conic)-gradient)\\(|(no-)?(open|close)-quote/;\n const contentValues = ['normal', 'none', 'initial', 'inherit', 'unset'];\n if (typeof value !== 'string' || contentValues.indexOf(value) === -1 && !contentValuePattern.test(value) && (value.charAt(0) !== value.charAt(value.length - 1) || value.charAt(0) !== '\"' && value.charAt(0) !== \"'\")) {\n lintWarning(`You seem to be using a value for 'content' without quotes, try replacing it with \\`content: '\"${value}\"'\\`.`, info);\n }\n }\n};\nexport default linter;","import { lintWarning } from './utils';\nconst linter = (key, value, info) => {\n if (key === 'animation') {\n if (info.hashId && value !== 'none') {\n lintWarning(`You seem to be using hashed animation '${value}', in which case 'animationName' with Keyframe as value is recommended.`, info);\n }\n }\n};\nexport default linter;","import canUseDom from '../../../../_util/canUseDom';\nimport { ATTR_MARK } from '../../StyleContext';\nexport const ATTR_CACHE_MAP = 'data-ant-cssinjs-cache-path';\n/**\n * This marks style from the css file.\n * Which means not exist in `<style />` tag.\n */\nexport const CSS_FILE_STYLE = '_FILE_STYLE__';\nexport function serialize(cachePathMap) {\n return Object.keys(cachePathMap).map(path => {\n const hash = cachePathMap[path];\n return `${path}:${hash}`;\n }).join(';');\n}\nlet cachePathMap;\nlet fromCSSFile = true;\n/**\n * @private Test usage only. Can save remove if no need.\n */\nexport function reset(mockCache) {\n let fromFile = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n cachePathMap = mockCache;\n fromCSSFile = fromFile;\n}\nexport function prepare() {\n var _a;\n if (!cachePathMap) {\n cachePathMap = {};\n if (canUseDom()) {\n const div = document.createElement('div');\n div.className = ATTR_CACHE_MAP;\n div.style.position = 'fixed';\n div.style.visibility = 'hidden';\n div.style.top = '-9999px';\n document.body.appendChild(div);\n let content = getComputedStyle(div).content || '';\n content = content.replace(/^\"/, '').replace(/\"$/, '');\n // Fill data\n content.split(';').forEach(item => {\n const [path, hash] = item.split(':');\n cachePathMap[path] = hash;\n });\n // Remove inline record style\n const inlineMapStyle = document.querySelector(`style[${ATTR_CACHE_MAP}]`);\n if (inlineMapStyle) {\n fromCSSFile = false;\n (_a = inlineMapStyle.parentNode) === null || _a === void 0 ? void 0 : _a.removeChild(inlineMapStyle);\n }\n document.body.removeChild(div);\n }\n }\n}\nexport function existPath(path) {\n prepare();\n return !!cachePathMap[path];\n}\nexport function getStyleAndHash(path) {\n const hash = cachePathMap[path];\n let styleStr = null;\n if (hash && canUseDom()) {\n if (fromCSSFile) {\n styleStr = CSS_FILE_STYLE;\n } else {\n const style = document.querySelector(`style[${ATTR_MARK}=\"${cachePathMap[path]}\"]`);\n if (style) {\n styleStr = style.innerHTML;\n } else {\n // Clean up since not exist anymore\n delete cachePathMap[path];\n }\n }\n }\n return [styleStr, hash];\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport hash from '@emotion/hash';\n// @ts-ignore\nimport unitless from '@emotion/unitless';\nimport { compile, serialize, stringify } from 'stylis';\nimport { contentQuotesLinter, hashedAnimationLinter } from '../../linters';\nimport { useStyleInject, ATTR_CACHE_PATH, ATTR_MARK, ATTR_TOKEN, CSS_IN_JS_INSTANCE } from '../../StyleContext';\nimport { supportLayer } from '../../util';\nimport useGlobalCache from '../useGlobalCache';\nimport { removeCSS, updateCSS } from '../../../../vc-util/Dom/dynamicCSS';\nimport { computed } from 'vue';\nimport canUseDom from '../../../../_util/canUseDom';\nimport { ATTR_CACHE_MAP, existPath, getStyleAndHash, serialize as serializeCacheMap } from './cacheMapUtil';\nconst isClientSide = canUseDom();\nconst SKIP_CHECK = '_skip_check_';\nconst MULTI_VALUE = '_multi_value_';\n// ============================================================================\n// == Parser ==\n// ============================================================================\n// Preprocessor style content to browser support one\nexport function normalizeStyle(styleStr) {\n const serialized = serialize(compile(styleStr), stringify);\n return serialized.replace(/\\{%%%\\:[^;];}/g, ';');\n}\nfunction isCompoundCSSProperty(value) {\n return typeof value === 'object' && value && (SKIP_CHECK in value || MULTI_VALUE in value);\n}\n// 注入 hash 值\nfunction injectSelectorHash(key, hashId, hashPriority) {\n if (!hashId) {\n return key;\n }\n const hashClassName = `.${hashId}`;\n const hashSelector = hashPriority === 'low' ? `:where(${hashClassName})` : hashClassName;\n // 注入 hashId\n const keys = key.split(',').map(k => {\n var _a;\n const fullPath = k.trim().split(/\\s+/);\n // 如果 Selector 第一个是 HTML Element,那我们就插到它的后面。反之,就插到最前面。\n let firstPath = fullPath[0] || '';\n const htmlElement = ((_a = firstPath.match(/^\\w+/)) === null || _a === void 0 ? void 0 : _a[0]) || '';\n firstPath = `${htmlElement}${hashSelector}${firstPath.slice(htmlElement.length)}`;\n return [firstPath, ...fullPath.slice(1)].join(' ');\n });\n return keys.join(',');\n}\n// Global effect style will mount once and not removed\n// The effect will not save in SSR cache (e.g. keyframes)\nconst globalEffectStyleKeys = new Set();\n/**\n * @private Test only. Clear the global effect style keys.\n */\nexport const _cf = process.env.NODE_ENV !== 'production' ? () => globalEffectStyleKeys.clear() : undefined;\n// Parse CSSObject to style content\nexport const parseStyle = function (interpolation) {\n let config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n let {\n root,\n injectHash,\n parentSelectors\n } = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {\n root: true,\n parentSelectors: []\n };\n const {\n hashId,\n layer,\n path,\n hashPriority,\n transformers = [],\n linters = []\n } = config;\n let styleStr = '';\n let effectStyle = {};\n function parseKeyframes(keyframes) {\n const animationName = keyframes.getName(hashId);\n if (!effectStyle[animationName]) {\n const [parsedStr] = parseStyle(keyframes.style, config, {\n root: false,\n parentSelectors\n });\n effectStyle[animationName] = `@keyframes ${keyframes.getName(hashId)}${parsedStr}`;\n }\n }\n function flattenList(list) {\n let fullList = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n list.forEach(item => {\n if (Array.isArray(item)) {\n flattenList(item, fullList);\n } else if (item) {\n fullList.push(item);\n }\n });\n return fullList;\n }\n const flattenStyleList = flattenList(Array.isArray(interpolation) ? interpolation : [interpolation]);\n flattenStyleList.forEach(originStyle => {\n // Only root level can use raw string\n const style = typeof originStyle === 'string' && !root ? {} : originStyle;\n if (typeof style === 'string') {\n styleStr += `${style}\\n`;\n } else if (style._keyframe) {\n // Keyframe\n parseKeyframes(style);\n } else {\n const mergedStyle = transformers.reduce((prev, trans) => {\n var _a;\n return ((_a = trans === null || trans === void 0 ? void 0 : trans.visit) === null || _a === void 0 ? void 0 : _a.call(trans, prev)) || prev;\n }, style);\n // Normal CSSObject\n Object.keys(mergedStyle).forEach(key => {\n var _a;\n const value = mergedStyle[key];\n if (typeof value === 'object' && value && (key !== 'animationName' || !value._keyframe) && !isCompoundCSSProperty(value)) {\n let subInjectHash = false;\n // 当成嵌套对象来处理\n let mergedKey = key.trim();\n // Whether treat child as root. In most case it is false.\n let nextRoot = false;\n // 拆分多个选择器\n if ((root || injectHash) && hashId) {\n if (mergedKey.startsWith('@')) {\n // 略过媒体查询,交给子节点继续插入 hashId\n subInjectHash = true;\n } else {\n // 注入 hashId\n mergedKey = injectSelectorHash(key, hashId, hashPriority);\n }\n } else if (root && !hashId && (mergedKey === '&' || mergedKey === '')) {\n // In case of `{ '&': { a: { color: 'red' } } }` or `{ '': { a: { color: 'red' } } }` without hashId,\n // we will get `&{a:{color:red;}}` or `{a:{color:red;}}` string for stylis to compile.\n // But it does not conform to stylis syntax,\n // and finally we will get `{color:red;}` as css, which is wrong.\n // So we need to remove key in root, and treat child `{ a: { color: 'red' } }` as root.\n mergedKey = '';\n nextRoot = true;\n }\n const [parsedStr, childEffectStyle] = parseStyle(value, config, {\n root: nextRoot,\n injectHash: subInjectHash,\n parentSelectors: [...parentSelectors, mergedKey]\n });\n effectStyle = _extends(_extends({}, effectStyle), childEffectStyle);\n styleStr += `${mergedKey}${parsedStr}`;\n } else {\n function appendStyle(cssKey, cssValue) {\n if (process.env.NODE_ENV !== 'production' && (typeof value !== 'object' || !(value === null || value === void 0 ? void 0 : value[SKIP_CHECK]))) {\n [contentQuotesLinter, hashedAnimationLinter, ...linters].forEach(linter => linter(cssKey, cssValue, {\n path,\n hashId,\n parentSelectors\n }));\n }\n // 如果是样式则直接插入\n const styleName = cssKey.replace(/[A-Z]/g, match => `-${match.toLowerCase()}`);\n // Auto suffix with px\n let formatValue = cssValue;\n if (!unitless[cssKey] && typeof formatValue === 'number' && formatValue !== 0) {\n formatValue = `${formatValue}px`;\n }\n // handle animationName & Keyframe value\n if (cssKey === 'animationName' && (cssValue === null || cssValue === void 0 ? void 0 : cssValue._keyframe)) {\n parseKeyframes(cssValue);\n formatValue = cssValue.getName(hashId);\n }\n styleStr += `${styleName}:${formatValue};`;\n }\n const actualValue = (_a = value === null || value === void 0 ? void 0 : value.value) !== null && _a !== void 0 ? _a : value;\n if (typeof value === 'object' && (value === null || value === void 0 ? void 0 : value[MULTI_VALUE]) && Array.isArray(actualValue)) {\n actualValue.forEach(item => {\n appendStyle(key, item);\n });\n } else {\n appendStyle(key, actualValue);\n }\n }\n });\n }\n });\n if (!root) {\n styleStr = `{${styleStr}}`;\n } else if (layer && supportLayer()) {\n const layerCells = layer.split(',');\n const layerName = layerCells[layerCells.length - 1].trim();\n styleStr = `@layer ${layerName} {${styleStr}}`;\n // Order of layer if needed\n if (layerCells.length > 1) {\n // zombieJ: stylis do not support layer order, so we need to handle it manually.\n styleStr = `@layer ${layer}{%%%:%}${styleStr}`;\n }\n }\n return [styleStr, effectStyle];\n};\n// ============================================================================\n// == Register ==\n// ============================================================================\nfunction uniqueHash(path, styleStr) {\n return hash(`${path.join('%')}${styleStr}`);\n}\n// function Empty() {\n// return null;\n// }\n/**\n * Register a style to the global style sheet.\n */\nexport default function useStyleRegister(info, styleFn) {\n const styleContext = useStyleInject();\n const tokenKey = computed(() => info.value.token._tokenKey);\n const fullPath = computed(() => [tokenKey.value, ...info.value.path]);\n // Check if need insert style\n let isMergedClientSide = isClientSide;\n if (process.env.NODE_ENV !== 'production' && styleContext.value.mock !== undefined) {\n isMergedClientSide = styleContext.value.mock === 'client';\n }\n // const [cacheStyle[0], cacheStyle[1], cacheStyle[2]]\n useGlobalCache('style', fullPath,\n // Create cache if needed\n () => {\n const {\n path,\n hashId,\n layer,\n nonce,\n clientOnly,\n order = 0\n } = info.value;\n const cachePath = fullPath.value.join('|');\n // Get style from SSR inline style directly\n if (existPath(cachePath)) {\n const [inlineCacheStyleStr, styleHash] = getStyleAndHash(cachePath);\n if (inlineCacheStyleStr) {\n return [inlineCacheStyleStr, tokenKey.value, styleHash, {}, clientOnly, order];\n }\n }\n const styleObj = styleFn();\n const {\n hashPriority,\n container,\n transformers,\n linters,\n cache\n } = styleContext.value;\n const [parsedStyle, effectStyle] = parseStyle(styleObj, {\n hashId,\n hashPriority,\n layer,\n path: path.join('-'),\n transformers,\n linters\n });\n const styleStr = normalizeStyle(parsedStyle);\n const styleId = uniqueHash(fullPath.value, styleStr);\n if (isMergedClientSide) {\n const mergedCSSConfig = {\n mark: ATTR_MARK,\n prepend: 'queue',\n attachTo: container,\n priority: order\n };\n const nonceStr = typeof nonce === 'function' ? nonce() : nonce;\n if (nonceStr) {\n mergedCSSConfig.csp = {\n nonce: nonceStr\n };\n }\n const style = updateCSS(styleStr, styleId, mergedCSSConfig);\n style[CSS_IN_JS_INSTANCE] = cache.instanceId;\n // Used for `useCacheToken` to remove on batch when token removed\n style.setAttribute(ATTR_TOKEN, tokenKey.value);\n // Dev usage to find which cache path made this easily\n if (process.env.NODE_ENV !== 'production') {\n style.setAttribute(ATTR_CACHE_PATH, fullPath.value.join('|'));\n }\n // Inject client side effect style\n Object.keys(effectStyle).forEach(effectKey => {\n if (!globalEffectStyleKeys.has(effectKey)) {\n globalEffectStyleKeys.add(effectKey);\n // Inject\n updateCSS(normalizeStyle(effectStyle[effectKey]), `_effect-${effectKey}`, {\n mark: ATTR_MARK,\n prepend: 'queue',\n attachTo: container\n });\n }\n });\n }\n return [styleStr, tokenKey.value, styleId, effectStyle, clientOnly, order];\n },\n // Remove cache if no need\n (_ref, fromHMR) => {\n let [,, styleId] = _ref;\n if ((fromHMR || styleContext.value.autoClear) && isClientSide) {\n removeCSS(styleId, {\n mark: ATTR_MARK\n });\n }\n });\n return node => {\n return node;\n // let styleNode: VueNode;\n // if (!styleContext.ssrInline || isMergedClientSide || !styleContext.defaultCache) {\n // styleNode = <Empty />;\n // } else {\n // styleNode = (\n // <style\n // {...{\n // [ATTR_TOKEN]: cacheStyle.value[1],\n // [ATTR_MARK]: cacheStyle.value[2],\n // }}\n // innerHTML={cacheStyle.value[0]}\n // />\n // );\n // }\n // return (\n // <>\n // {styleNode}\n // {node}\n // </>\n // );\n };\n}\n// ============================================================================\n// == SSR ==\n// ============================================================================\nexport function extractStyle(cache) {\n let plain = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n const matchPrefix = `style%`;\n // prefix with `style` is used for `useStyleRegister` to cache style context\n const styleKeys = Array.from(cache.cache.keys()).filter(key => key.startsWith(matchPrefix));\n // Common effect styles like animation\n const effectStyles = {};\n // Mapping of cachePath to style hash\n const cachePathMap = {};\n let styleText = '';\n function toStyleStr(style, tokenKey, styleId) {\n let customizeAttrs = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n const attrs = _extends(_extends({}, customizeAttrs), {\n [ATTR_TOKEN]: tokenKey,\n [ATTR_MARK]: styleId\n });\n const attrStr = Object.keys(attrs).map(attr => {\n const val = attrs[attr];\n return val ? `${attr}=\"${val}\"` : null;\n }).filter(v => v).join(' ');\n return plain ? style : `<style ${attrStr}>${style}</style>`;\n }\n const orderStyles = styleKeys.map(key => {\n const cachePath = key.slice(matchPrefix.length).replace(/%/g, '|');\n const [styleStr, tokenKey, styleId, effectStyle, clientOnly, order] = cache.cache.get(key)[1];\n // Skip client only style\n if (clientOnly) {\n return null;\n }\n // ====================== Style ======================\n // Used for vc-util\n const sharedAttrs = {\n 'data-vc-order': 'prependQueue',\n 'data-vc-priority': `${order}`\n };\n let keyStyleText = toStyleStr(styleStr, tokenKey, styleId, sharedAttrs);\n // Save cache path with hash mapping\n cachePathMap[cachePath] = styleId;\n // =============== Create effect style ===============\n if (effectStyle) {\n Object.keys(effectStyle).forEach(effectKey => {\n // Effect style can be reused\n if (!effectStyles[effectKey]) {\n effectStyles[effectKey] = true;\n keyStyleText += toStyleStr(normalizeStyle(effectStyle[effectKey]), tokenKey, `_effect-${effectKey}`, sharedAttrs);\n }\n });\n }\n const ret = [order, keyStyleText];\n return ret;\n }).filter(o => o);\n orderStyles.sort((o1, o2) => o1[0] - o2[0]).forEach(_ref2 => {\n let [, style] = _ref2;\n styleText += style;\n });\n // ==================== Fill Cache Path ====================\n styleText += toStyleStr(`.${ATTR_CACHE_MAP}{content:\"${serializeCacheMap(cachePathMap)}\";}`, undefined, undefined, {\n [ATTR_CACHE_MAP]: ATTR_CACHE_MAP\n });\n return styleText;\n}","class Keyframe {\n constructor(name, style) {\n this._keyframe = true;\n this.name = name;\n this.style = style;\n }\n getName() {\n let hashId = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n return hashId ? `${hashId}-${this.name}` : this.name;\n }\n}\nexport default Keyframe;","export default '4.2.6';","/* eslint import/no-unresolved: 0 */\n// @ts-ignore\nimport version from './version';\nexport default version;","const genControlHeight = token => {\n const {\n controlHeight\n } = token;\n return {\n controlHeightSM: controlHeight * 0.75,\n controlHeightXS: controlHeight * 0.5,\n controlHeightLG: controlHeight * 1.25\n };\n};\nexport default genControlHeight;","export default function genSizeMapToken(token) {\n const {\n sizeUnit,\n sizeStep\n } = token;\n return {\n sizeXXL: sizeUnit * (sizeStep + 8),\n sizeXL: sizeUnit * (sizeStep + 4),\n sizeLG: sizeUnit * (sizeStep + 2),\n sizeMD: sizeUnit * (sizeStep + 1),\n sizeMS: sizeUnit * sizeStep,\n size: sizeUnit * sizeStep,\n sizeSM: sizeUnit * (sizeStep - 1),\n sizeXS: sizeUnit * (sizeStep - 2),\n sizeXXS: sizeUnit * (sizeStep - 3) // 4\n };\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport const defaultPresetColors = {\n blue: '#1677ff',\n purple: '#722ED1',\n cyan: '#13C2C2',\n green: '#52C41A',\n magenta: '#EB2F96',\n pink: '#eb2f96',\n red: '#F5222D',\n orange: '#FA8C16',\n yellow: '#FADB14',\n volcano: '#FA541C',\n geekblue: '#2F54EB',\n gold: '#FAAD14',\n lime: '#A0D911'\n};\nconst seedToken = _extends(_extends({}, defaultPresetColors), {\n // Color\n colorPrimary: '#1677ff',\n colorSuccess: '#52c41a',\n colorWarning: '#faad14',\n colorError: '#ff4d4f',\n colorInfo: '#1677ff',\n colorTextBase: '',\n colorBgBase: '',\n // Font\n fontFamily: `-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial,\n'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',\n'Noto Color Emoji'`,\n fontSize: 14,\n // Line\n lineWidth: 1,\n lineType: 'solid',\n // Motion\n motionUnit: 0.1,\n motionBase: 0,\n motionEaseOutCirc: 'cubic-bezier(0.08, 0.82, 0.17, 1)',\n motionEaseInOutCirc: 'cubic-bezier(0.78, 0.14, 0.15, 0.86)',\n motionEaseOut: 'cubic-bezier(0.215, 0.61, 0.355, 1)',\n motionEaseInOut: 'cubic-bezier(0.645, 0.045, 0.355, 1)',\n motionEaseOutBack: 'cubic-bezier(0.12, 0.4, 0.29, 1.46)',\n motionEaseInBack: 'cubic-bezier(0.71, -0.46, 0.88, 0.6)',\n motionEaseInQuint: 'cubic-bezier(0.755, 0.05, 0.855, 0.06)',\n motionEaseOutQuint: 'cubic-bezier(0.23, 1, 0.32, 1)',\n // Radius\n borderRadius: 6,\n // Size\n sizeUnit: 4,\n sizeStep: 4,\n sizePopupArrow: 16,\n // Control Base\n controlHeight: 32,\n // zIndex\n zIndexBase: 0,\n zIndexPopupBase: 1000,\n // Image\n opacityImage: 1,\n // Wireframe\n wireframe: false\n});\nexport default seedToken;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { TinyColor } from '@ctrl/tinycolor';\nexport default function genColorMapToken(seed, _ref) {\n let {\n generateColorPalettes,\n generateNeutralColorPalettes\n } = _ref;\n const {\n colorSuccess: colorSuccessBase,\n colorWarning: colorWarningBase,\n colorError: colorErrorBase,\n colorInfo: colorInfoBase,\n colorPrimary: colorPrimaryBase,\n colorBgBase,\n colorTextBase\n } = seed;\n const primaryColors = generateColorPalettes(colorPrimaryBase);\n const successColors = generateColorPalettes(colorSuccessBase);\n const warningColors = generateColorPalettes(colorWarningBase);\n const errorColors = generateColorPalettes(colorErrorBase);\n const infoColors = generateColorPalettes(colorInfoBase);\n const neutralColors = generateNeutralColorPalettes(colorBgBase, colorTextBase);\n return _extends(_extends({}, neutralColors), {\n colorPrimaryBg: primaryColors[1],\n colorPrimaryBgHover: primaryColors[2],\n colorPrimaryBorder: primaryColors[3],\n colorPrimaryBorderHover: primaryColors[4],\n colorPrimaryHover: primaryColors[5],\n colorPrimary: primaryColors[6],\n colorPrimaryActive: primaryColors[7],\n colorPrimaryTextHover: primaryColors[8],\n colorPrimaryText: primaryColors[9],\n colorPrimaryTextActive: primaryColors[10],\n colorSuccessBg: successColors[1],\n colorSuccessBgHover: successColors[2],\n colorSuccessBorder: successColors[3],\n colorSuccessBorderHover: successColors[4],\n colorSuccessHover: successColors[4],\n colorSuccess: successColors[6],\n colorSuccessActive: successColors[7],\n colorSuccessTextHover: successColors[8],\n colorSuccessText: successColors[9],\n colorSuccessTextActive: successColors[10],\n colorErrorBg: errorColors[1],\n colorErrorBgHover: errorColors[2],\n colorErrorBorder: errorColors[3],\n colorErrorBorderHover: errorColors[4],\n colorErrorHover: errorColors[5],\n colorError: errorColors[6],\n colorErrorActive: errorColors[7],\n colorErrorTextHover: errorColors[8],\n colorErrorText: errorColors[9],\n colorErrorTextActive: errorColors[10],\n colorWarningBg: warningColors[1],\n colorWarningBgHover: warningColors[2],\n colorWarningBorder: warningColors[3],\n colorWarningBorderHover: warningColors[4],\n colorWarningHover: warningColors[4],\n colorWarning: warningColors[6],\n colorWarningActive: warningColors[7],\n colorWarningTextHover: warningColors[8],\n colorWarningText: warningColors[9],\n colorWarningTextActive: warningColors[10],\n colorInfoBg: infoColors[1],\n colorInfoBgHover: infoColors[2],\n colorInfoBorder: infoColors[3],\n colorInfoBorderHover: infoColors[4],\n colorInfoHover: infoColors[4],\n colorInfo: infoColors[6],\n colorInfoActive: infoColors[7],\n colorInfoTextHover: infoColors[8],\n colorInfoText: infoColors[9],\n colorInfoTextActive: infoColors[10],\n colorBgMask: new TinyColor('#000').setAlpha(0.45).toRgbString(),\n colorWhite: '#fff'\n });\n}","const genRadius = radiusBase => {\n let radiusLG = radiusBase;\n let radiusSM = radiusBase;\n let radiusXS = radiusBase;\n let radiusOuter = radiusBase;\n // radiusLG\n if (radiusBase < 6 && radiusBase >= 5) {\n radiusLG = radiusBase + 1;\n } else if (radiusBase < 16 && radiusBase >= 6) {\n radiusLG = radiusBase + 2;\n } else if (radiusBase >= 16) {\n radiusLG = 16;\n }\n // radiusSM\n if (radiusBase < 7 && radiusBase >= 5) {\n radiusSM = 4;\n } else if (radiusBase < 8 && radiusBase >= 7) {\n radiusSM = 5;\n } else if (radiusBase < 14 && radiusBase >= 8) {\n radiusSM = 6;\n } else if (radiusBase < 16 && radiusBase >= 14) {\n radiusSM = 7;\n } else if (radiusBase >= 16) {\n radiusSM = 8;\n }\n // radiusXS\n if (radiusBase < 6 && radiusBase >= 2) {\n radiusXS = 1;\n } else if (radiusBase >= 6) {\n radiusXS = 2;\n }\n // radiusOuter\n if (radiusBase > 4 && radiusBase < 8) {\n radiusOuter = 4;\n } else if (radiusBase >= 8) {\n radiusOuter = 6;\n }\n return {\n borderRadius: radiusBase > 16 ? 16 : radiusBase,\n borderRadiusXS: radiusXS,\n borderRadiusSM: radiusSM,\n borderRadiusLG: radiusLG,\n borderRadiusOuter: radiusOuter\n };\n};\nexport default genRadius;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport genRadius from './genRadius';\nexport default function genCommonMapToken(token) {\n const {\n motionUnit,\n motionBase,\n borderRadius,\n lineWidth\n } = token;\n return _extends({\n // motion\n motionDurationFast: `${(motionBase + motionUnit).toFixed(1)}s`,\n motionDurationMid: `${(motionBase + motionUnit * 2).toFixed(1)}s`,\n motionDurationSlow: `${(motionBase + motionUnit * 3).toFixed(1)}s`,\n // line\n lineWidthBold: lineWidth + 1\n }, genRadius(borderRadius));\n}","import { TinyColor } from '@ctrl/tinycolor';\nexport const getAlphaColor = (baseColor, alpha) => new TinyColor(baseColor).setAlpha(alpha).toRgbString();\nexport const getSolidColor = (baseColor, brightness) => {\n const instance = new TinyColor(baseColor);\n return instance.darken(brightness).toHexString();\n};","import { generate } from '@ant-design/colors';\nimport { getAlphaColor, getSolidColor } from './colorAlgorithm';\nexport const generateColorPalettes = baseColor => {\n const colors = generate(baseColor);\n return {\n 1: colors[0],\n 2: colors[1],\n 3: colors[2],\n 4: colors[3],\n 5: colors[4],\n 6: colors[5],\n 7: colors[6],\n 8: colors[4],\n 9: colors[5],\n 10: colors[6]\n // 8: colors[7],\n // 9: colors[8],\n // 10: colors[9],\n };\n};\nexport const generateNeutralColorPalettes = (bgBaseColor, textBaseColor) => {\n const colorBgBase = bgBaseColor || '#fff';\n const colorTextBase = textBaseColor || '#000';\n return {\n colorBgBase,\n colorTextBase,\n colorText: getAlphaColor(colorTextBase, 0.88),\n colorTextSecondary: getAlphaColor(colorTextBase, 0.65),\n colorTextTertiary: getAlphaColor(colorTextBase, 0.45),\n colorTextQuaternary: getAlphaColor(colorTextBase, 0.25),\n colorFill: getAlphaColor(colorTextBase, 0.15),\n colorFillSecondary: getAlphaColor(colorTextBase, 0.06),\n colorFillTertiary: getAlphaColor(colorTextBase, 0.04),\n colorFillQuaternary: getAlphaColor(colorTextBase, 0.02),\n colorBgLayout: getSolidColor(colorBgBase, 4),\n colorBgContainer: getSolidColor(colorBgBase, 0),\n colorBgElevated: getSolidColor(colorBgBase, 0),\n colorBgSpotlight: getAlphaColor(colorTextBase, 0.85),\n colorBorder: getSolidColor(colorBgBase, 15),\n colorBorderSecondary: getSolidColor(colorBgBase, 6)\n };\n};","// https://zhuanlan.zhihu.com/p/32746810\nexport default function getFontSizes(base) {\n const fontSizes = new Array(10).fill(null).map((_, index) => {\n const i = index - 1;\n const baseSize = base * Math.pow(2.71828, i / 5);\n const intSize = index > 1 ? Math.floor(baseSize) : Math.ceil(baseSize);\n // Convert to even\n return Math.floor(intSize / 2) * 2;\n });\n fontSizes[1] = base;\n return fontSizes.map(size => {\n const height = size + 8;\n return {\n size,\n lineHeight: height / size\n };\n });\n}","import genFontSizes from './genFontSizes';\nconst genFontMapToken = fontSize => {\n const fontSizePairs = genFontSizes(fontSize);\n const fontSizes = fontSizePairs.map(pair => pair.size);\n const lineHeights = fontSizePairs.map(pair => pair.lineHeight);\n return {\n fontSizeSM: fontSizes[0],\n fontSize: fontSizes[1],\n fontSizeLG: fontSizes[2],\n fontSizeXL: fontSizes[3],\n fontSizeHeading1: fontSizes[6],\n fontSizeHeading2: fontSizes[5],\n fontSizeHeading3: fontSizes[4],\n fontSizeHeading4: fontSizes[3],\n fontSizeHeading5: fontSizes[2],\n lineHeight: lineHeights[1],\n lineHeightLG: lineHeights[2],\n lineHeightSM: lineHeights[0],\n lineHeightHeading1: lineHeights[6],\n lineHeightHeading2: lineHeights[5],\n lineHeightHeading3: lineHeights[4],\n lineHeightHeading4: lineHeights[3],\n lineHeightHeading5: lineHeights[2]\n };\n};\nexport default genFontMapToken;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { generate } from '@ant-design/colors';\nimport genControlHeight from '../shared/genControlHeight';\nimport genSizeMapToken from '../shared/genSizeMapToken';\nimport { defaultPresetColors } from '../seed';\nimport genColorMapToken from '../shared/genColorMapToken';\nimport genCommonMapToken from '../shared/genCommonMapToken';\nimport { generateColorPalettes, generateNeutralColorPalettes } from './colors';\nimport genFontMapToken from '../shared/genFontMapToken';\nexport default function derivative(token) {\n const colorPalettes = Object.keys(defaultPresetColors).map(colorKey => {\n const colors = generate(token[colorKey]);\n return new Array(10).fill(1).reduce((prev, _, i) => {\n prev[`${colorKey}-${i + 1}`] = colors[i];\n return prev;\n }, {});\n }).reduce((prev, cur) => {\n prev = _extends(_extends({}, prev), cur);\n return prev;\n }, {});\n return _extends(_extends(_extends(_extends(_extends(_extends(_extends({}, token), colorPalettes), genColorMapToken(token, {\n generateColorPalettes,\n generateNeutralColorPalettes\n })), genFontMapToken(token.fontSize)), genSizeMapToken(token)), genControlHeight(token)), genCommonMapToken(token));\n}","import { TinyColor } from '@ctrl/tinycolor';\nfunction isStableColor(color) {\n return color >= 0 && color <= 255;\n}\nfunction getAlphaColor(frontColor, backgroundColor) {\n const {\n r: fR,\n g: fG,\n b: fB,\n a: originAlpha\n } = new TinyColor(frontColor).toRgb();\n if (originAlpha < 1) {\n return frontColor;\n }\n const {\n r: bR,\n g: bG,\n b: bB\n } = new TinyColor(backgroundColor).toRgb();\n for (let fA = 0.01; fA <= 1; fA += 0.01) {\n const r = Math.round((fR - bR * (1 - fA)) / fA);\n const g = Math.round((fG - bG * (1 - fA)) / fA);\n const b = Math.round((fB - bB * (1 - fA)) / fA);\n if (isStableColor(r) && isStableColor(g) && isStableColor(b)) {\n return new TinyColor({\n r,\n g,\n b,\n a: Math.round(fA * 100) / 100\n }).toRgbString();\n }\n }\n // fallback\n /* istanbul ignore next */\n return new TinyColor({\n r: fR,\n g: fG,\n b: fB,\n a: 1\n }).toRgbString();\n}\nexport default getAlphaColor;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { TinyColor } from '@ctrl/tinycolor';\nimport getAlphaColor from './getAlphaColor';\nimport seedToken from '../themes/seed';\n/**\n * Seed (designer) > Derivative (designer) > Alias (developer).\n *\n * Merge seed & derivative & override token and generate alias token for developer.\n */\nexport default function formatToken(derivativeToken) {\n const {\n override\n } = derivativeToken,\n restToken = __rest(derivativeToken, [\"override\"]);\n const overrideTokens = _extends({}, override);\n Object.keys(seedToken).forEach(token => {\n delete overrideTokens[token];\n });\n const mergedToken = _extends(_extends({}, restToken), overrideTokens);\n const screenXS = 480;\n const screenSM = 576;\n const screenMD = 768;\n const screenLG = 992;\n const screenXL = 1200;\n const screenXXL = 1600;\n const screenXXXL = 2000;\n // Generate alias token\n const aliasToken = _extends(_extends(_extends({}, mergedToken), {\n colorLink: mergedToken.colorInfoText,\n colorLinkHover: mergedToken.colorInfoHover,\n colorLinkActive: mergedToken.colorInfoActive,\n // ============== Background ============== //\n colorFillContent: mergedToken.colorFillSecondary,\n colorFillContentHover: mergedToken.colorFill,\n colorFillAlter: mergedToken.colorFillQuaternary,\n colorBgContainerDisabled: mergedToken.colorFillTertiary,\n // ============== Split ============== //\n colorBorderBg: mergedToken.colorBgContainer,\n colorSplit: getAlphaColor(mergedToken.colorBorderSecondary, mergedToken.colorBgContainer),\n // ============== Text ============== //\n colorTextPlaceholder: mergedToken.colorTextQuaternary,\n colorTextDisabled: mergedToken.colorTextQuaternary,\n colorTextHeading: mergedToken.colorText,\n colorTextLabel: mergedToken.colorTextSecondary,\n colorTextDescription: mergedToken.colorTextTertiary,\n colorTextLightSolid: mergedToken.colorWhite,\n colorHighlight: mergedToken.colorError,\n colorBgTextHover: mergedToken.colorFillSecondary,\n colorBgTextActive: mergedToken.colorFill,\n colorIcon: mergedToken.colorTextTertiary,\n colorIconHover: mergedToken.colorText,\n colorErrorOutline: getAlphaColor(mergedToken.colorErrorBg, mergedToken.colorBgContainer),\n colorWarningOutline: getAlphaColor(mergedToken.colorWarningBg, mergedToken.colorBgContainer),\n // Font\n fontSizeIcon: mergedToken.fontSizeSM,\n // Control\n lineWidth: mergedToken.lineWidth,\n controlOutlineWidth: mergedToken.lineWidth * 2,\n // Checkbox size and expand icon size\n controlInteractiveSize: mergedToken.controlHeight / 2,\n controlItemBgHover: mergedToken.colorFillTertiary,\n controlItemBgActive: mergedToken.colorPrimaryBg,\n controlItemBgActiveHover: mergedToken.colorPrimaryBgHover,\n controlItemBgActiveDisabled: mergedToken.colorFill,\n controlTmpOutline: mergedToken.colorFillQuaternary,\n controlOutline: getAlphaColor(mergedToken.colorPrimaryBg, mergedToken.colorBgContainer),\n lineType: mergedToken.lineType,\n borderRadius: mergedToken.borderRadius,\n borderRadiusXS: mergedToken.borderRadiusXS,\n borderRadiusSM: mergedToken.borderRadiusSM,\n borderRadiusLG: mergedToken.borderRadiusLG,\n fontWeightStrong: 600,\n opacityLoading: 0.65,\n linkDecoration: 'none',\n linkHoverDecoration: 'none',\n linkFocusDecoration: 'none',\n controlPaddingHorizontal: 12,\n controlPaddingHorizontalSM: 8,\n paddingXXS: mergedToken.sizeXXS,\n paddingXS: mergedToken.sizeXS,\n paddingSM: mergedToken.sizeSM,\n padding: mergedToken.size,\n paddingMD: mergedToken.sizeMD,\n paddingLG: mergedToken.sizeLG,\n paddingXL: mergedToken.sizeXL,\n paddingContentHorizontalLG: mergedToken.sizeLG,\n paddingContentVerticalLG: mergedToken.sizeMS,\n paddingContentHorizontal: mergedToken.sizeMS,\n paddingContentVertical: mergedToken.sizeSM,\n paddingContentHorizontalSM: mergedToken.size,\n paddingContentVerticalSM: mergedToken.sizeXS,\n marginXXS: mergedToken.sizeXXS,\n marginXS: mergedToken.sizeXS,\n marginSM: mergedToken.sizeSM,\n margin: mergedToken.size,\n marginMD: mergedToken.sizeMD,\n marginLG: mergedToken.sizeLG,\n marginXL: mergedToken.sizeXL,\n marginXXL: mergedToken.sizeXXL,\n boxShadow: `\n 0 1px 2px 0 rgba(0, 0, 0, 0.03),\n 0 1px 6px -1px rgba(0, 0, 0, 0.02),\n 0 2px 4px 0 rgba(0, 0, 0, 0.02)\n `,\n boxShadowSecondary: `\n 0 6px 16px 0 rgba(0, 0, 0, 0.08),\n 0 3px 6px -4px rgba(0, 0, 0, 0.12),\n 0 9px 28px 8px rgba(0, 0, 0, 0.05)\n `,\n boxShadowTertiary: `\n 0 1px 2px 0 rgba(0, 0, 0, 0.03),\n 0 1px 6px -1px rgba(0, 0, 0, 0.02),\n 0 2px 4px 0 rgba(0, 0, 0, 0.02)\n `,\n screenXS,\n screenXSMin: screenXS,\n screenXSMax: screenSM - 1,\n screenSM,\n screenSMMin: screenSM,\n screenSMMax: screenMD - 1,\n screenMD,\n screenMDMin: screenMD,\n screenMDMax: screenLG - 1,\n screenLG,\n screenLGMin: screenLG,\n screenLGMax: screenXL - 1,\n screenXL,\n screenXLMin: screenXL,\n screenXLMax: screenXXL - 1,\n screenXXL,\n screenXXLMin: screenXXL,\n screenXXLMax: screenXXXL - 1,\n screenXXXL,\n screenXXXLMin: screenXXXL,\n // FIXME: component box-shadow, should be removed\n boxShadowPopoverArrow: '3px 3px 7px rgba(0, 0, 0, 0.1)',\n boxShadowCard: `\n 0 1px 2px -2px ${new TinyColor('rgba(0, 0, 0, 0.16)').toRgbString()},\n 0 3px 6px 0 ${new TinyColor('rgba(0, 0, 0, 0.12)').toRgbString()},\n 0 5px 12px 4px ${new TinyColor('rgba(0, 0, 0, 0.09)').toRgbString()}\n `,\n boxShadowDrawerRight: `\n -6px 0 16px 0 rgba(0, 0, 0, 0.08),\n -3px 0 6px -4px rgba(0, 0, 0, 0.12),\n -9px 0 28px 8px rgba(0, 0, 0, 0.05)\n `,\n boxShadowDrawerLeft: `\n 6px 0 16px 0 rgba(0, 0, 0, 0.08),\n 3px 0 6px -4px rgba(0, 0, 0, 0.12),\n 9px 0 28px 8px rgba(0, 0, 0, 0.05)\n `,\n boxShadowDrawerUp: `\n 0 6px 16px 0 rgba(0, 0, 0, 0.08),\n 0 3px 6px -4px rgba(0, 0, 0, 0.12),\n 0 9px 28px 8px rgba(0, 0, 0, 0.05)\n `,\n boxShadowDrawerDown: `\n 0 -6px 16px 0 rgba(0, 0, 0, 0.08),\n 0 -3px 6px -4px rgba(0, 0, 0, 0.12),\n 0 -9px 28px 8px rgba(0, 0, 0, 0.05)\n `,\n boxShadowTabsOverflowLeft: 'inset 10px 0 8px -8px rgba(0, 0, 0, 0.08)',\n boxShadowTabsOverflowRight: 'inset -10px 0 8px -8px rgba(0, 0, 0, 0.08)',\n boxShadowTabsOverflowTop: 'inset 0 10px 8px -8px rgba(0, 0, 0, 0.08)',\n boxShadowTabsOverflowBottom: 'inset 0 -10px 8px -8px rgba(0, 0, 0, 0.08)'\n }), overrideTokens);\n return aliasToken;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport { operationUnit } from './operationUnit';\nexport { roundedArrow } from './roundedArrow';\nexport { genPresetColor } from './presetColor';\nexport const textEllipsis = {\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis'\n};\nexport const resetComponent = token => ({\n boxSizing: 'border-box',\n margin: 0,\n padding: 0,\n color: token.colorText,\n fontSize: token.fontSize,\n // font-variant: @font-variant-base;\n lineHeight: token.lineHeight,\n listStyle: 'none',\n // font-feature-settings: @font-feature-settings-base;\n fontFamily: token.fontFamily\n});\nexport const resetIcon = () => ({\n display: 'inline-flex',\n alignItems: 'center',\n color: 'inherit',\n fontStyle: 'normal',\n lineHeight: 0,\n textAlign: 'center',\n textTransform: 'none',\n // for SVG icon, see https://blog.prototypr.io/align-svg-icons-to-text-and-say-goodbye-to-font-icons-d44b3d7b26b4\n verticalAlign: '-0.125em',\n textRendering: 'optimizeLegibility',\n '-webkit-font-smoothing': 'antialiased',\n '-moz-osx-font-smoothing': 'grayscale',\n '> *': {\n lineHeight: 1\n },\n svg: {\n display: 'inline-block'\n }\n});\nexport const clearFix = () => ({\n // https://github.com/ant-design/ant-design/issues/21301#issuecomment-583955229\n '&::before': {\n display: 'table',\n content: '\"\"'\n },\n '&::after': {\n // https://github.com/ant-design/ant-design/issues/21864\n display: 'table',\n clear: 'both',\n content: '\"\"'\n }\n});\nexport const genLinkStyle = token => ({\n a: {\n color: token.colorLink,\n textDecoration: token.linkDecoration,\n backgroundColor: 'transparent',\n outline: 'none',\n cursor: 'pointer',\n transition: `color ${token.motionDurationSlow}`,\n '-webkit-text-decoration-skip': 'objects',\n '&:hover': {\n color: token.colorLinkHover\n },\n '&:active': {\n color: token.colorLinkActive\n },\n [`&:active,\n &:hover`]: {\n textDecoration: token.linkHoverDecoration,\n outline: 0\n },\n // https://github.com/ant-design/ant-design/issues/22503\n '&:focus': {\n textDecoration: token.linkFocusDecoration,\n outline: 0\n },\n '&[disabled]': {\n color: token.colorTextDisabled,\n cursor: 'not-allowed'\n }\n }\n});\nexport const genCommonStyle = (token, componentPrefixCls) => {\n const {\n fontFamily,\n fontSize\n } = token;\n const rootPrefixSelector = `[class^=\"${componentPrefixCls}\"], [class*=\" ${componentPrefixCls}\"]`;\n return {\n [rootPrefixSelector]: {\n fontFamily,\n fontSize,\n boxSizing: 'border-box',\n '&::before, &::after': {\n boxSizing: 'border-box'\n },\n [rootPrefixSelector]: {\n boxSizing: 'border-box',\n '&::before, &::after': {\n boxSizing: 'border-box'\n }\n }\n }\n };\n};\nexport const genFocusOutline = token => ({\n outline: `${token.lineWidthBold}px solid ${token.colorPrimaryBorder}`,\n outlineOffset: 1,\n transition: 'outline-offset 0s, outline 0s'\n});\nexport const genFocusStyle = token => ({\n '&:focus-visible': _extends({}, genFocusOutline(token))\n});","import { computed, inject, provide } from 'vue';\nimport { objectType } from '../_util/type';\nexport const defaultIconPrefixCls = 'anticon';\nexport const GlobalFormContextKey = Symbol('GlobalFormContextKey');\nexport const useProvideGlobalForm = state => {\n provide(GlobalFormContextKey, state);\n};\nexport const useInjectGlobalForm = () => {\n return inject(GlobalFormContextKey, {\n validateMessages: computed(() => undefined)\n });\n};\nexport const GlobalConfigContextKey = Symbol('GlobalConfigContextKey');\nexport const configProviderProps = () => ({\n iconPrefixCls: String,\n getTargetContainer: {\n type: Function\n },\n getPopupContainer: {\n type: Function\n },\n prefixCls: String,\n getPrefixCls: {\n type: Function\n },\n renderEmpty: {\n type: Function\n },\n transformCellText: {\n type: Function\n },\n csp: objectType(),\n input: objectType(),\n autoInsertSpaceInButton: {\n type: Boolean,\n default: undefined\n },\n locale: objectType(),\n pageHeader: objectType(),\n componentSize: {\n type: String\n },\n componentDisabled: {\n type: Boolean,\n default: undefined\n },\n direction: {\n type: String,\n default: 'ltr'\n },\n space: objectType(),\n virtual: {\n type: Boolean,\n default: undefined\n },\n dropdownMatchSelectWidth: {\n type: [Number, Boolean],\n default: true\n },\n form: objectType(),\n pagination: objectType(),\n theme: objectType(),\n select: objectType(),\n wave: objectType()\n});\nexport const configProviderKey = Symbol('configProvider');\nexport const defaultConfigProvider = {\n getPrefixCls: (suffixCls, customizePrefixCls) => {\n if (customizePrefixCls) return customizePrefixCls;\n return suffixCls ? `ant-${suffixCls}` : 'ant';\n },\n iconPrefixCls: computed(() => defaultIconPrefixCls),\n getPopupContainer: computed(() => () => document.body),\n direction: computed(() => 'ltr')\n};\nexport const useConfigContextInject = () => {\n return inject(configProviderKey, defaultConfigProvider);\n};\nexport const useConfigContextProvider = props => {\n return provide(configProviderKey, props);\n};","import _extends from \"@babel/runtime/helpers/esm/extends\";\n/* eslint-disable no-redeclare */\nimport { useStyleRegister } from '../../_util/cssinjs';\nimport { genCommonStyle, genLinkStyle } from '../../style';\nimport { mergeToken, statisticToken, useToken } from '../internal';\nimport { computed } from 'vue';\nimport { useConfigContextInject } from '../../config-provider/context';\nexport default function genComponentStyleHook(component, styleFn, getDefaultToken) {\n return _prefixCls => {\n const prefixCls = computed(() => _prefixCls === null || _prefixCls === void 0 ? void 0 : _prefixCls.value);\n const [theme, token, hashId] = useToken();\n const {\n getPrefixCls,\n iconPrefixCls\n } = useConfigContextInject();\n const rootPrefixCls = computed(() => getPrefixCls());\n const sharedInfo = computed(() => {\n return {\n theme: theme.value,\n token: token.value,\n hashId: hashId.value,\n path: ['Shared', rootPrefixCls.value]\n };\n });\n // Generate style for all a tags in antd component.\n useStyleRegister(sharedInfo, () => [{\n // Link\n '&': genLinkStyle(token.value)\n }]);\n const componentInfo = computed(() => {\n return {\n theme: theme.value,\n token: token.value,\n hashId: hashId.value,\n path: [component, prefixCls.value, iconPrefixCls.value]\n };\n });\n return [useStyleRegister(componentInfo, () => {\n const {\n token: proxyToken,\n flush\n } = statisticToken(token.value);\n const defaultComponentToken = typeof getDefaultToken === 'function' ? getDefaultToken(proxyToken) : getDefaultToken;\n const mergedComponentToken = _extends(_extends({}, defaultComponentToken), token.value[component]);\n const componentCls = `.${prefixCls.value}`;\n const mergedToken = mergeToken(proxyToken, {\n componentCls,\n prefixCls: prefixCls.value,\n iconCls: `.${iconPrefixCls.value}`,\n antCls: `.${rootPrefixCls.value}`\n }, mergedComponentToken);\n const styleInterpolation = styleFn(mergedToken, {\n hashId: hashId.value,\n prefixCls: prefixCls.value,\n rootPrefixCls: rootPrefixCls.value,\n iconPrefixCls: iconPrefixCls.value,\n overrideComponentToken: token.value[component]\n });\n flush(component, mergedComponentToken);\n return [genCommonStyle(token.value, prefixCls.value), styleInterpolation];\n }), hashId];\n };\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nconst enableStatistic = process.env.NODE_ENV !== 'production' || typeof CSSINJS_STATISTIC !== 'undefined';\nlet recording = true;\n/**\n * This function will do as `Object.assign` in production. But will use Object.defineProperty:get to\n * pass all value access in development. To support statistic field usage with alias token.\n */\nexport function merge() {\n for (var _len = arguments.length, objs = new Array(_len), _key = 0; _key < _len; _key++) {\n objs[_key] = arguments[_key];\n }\n /* istanbul ignore next */\n if (!enableStatistic) {\n return _extends({}, ...objs);\n }\n recording = false;\n const ret = {};\n objs.forEach(obj => {\n const keys = Object.keys(obj);\n keys.forEach(key => {\n Object.defineProperty(ret, key, {\n configurable: true,\n enumerable: true,\n get: () => obj[key]\n });\n });\n });\n recording = true;\n return ret;\n}\n/** @private Internal Usage. Not use in your production. */\nexport const statistic = {};\n/** @private Internal Usage. Not use in your production. */\n// eslint-disable-next-line camelcase\nexport const _statistic_build_ = {};\n/* istanbul ignore next */\nfunction noop() {}\n/** Statistic token usage case. Should use `merge` function if you do not want spread record. */\nexport default function statisticToken(token) {\n let tokenKeys;\n let proxy = token;\n let flush = noop;\n if (enableStatistic) {\n tokenKeys = new Set();\n proxy = new Proxy(token, {\n get(obj, prop) {\n if (recording) {\n tokenKeys.add(prop);\n }\n return obj[prop];\n }\n });\n flush = (componentName, componentToken) => {\n statistic[componentName] = {\n global: Array.from(tokenKeys),\n component: componentToken\n };\n };\n }\n return {\n token: proxy,\n keys: tokenKeys,\n flush\n };\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { createTheme, useCacheToken, useStyleRegister } from '../_util/cssinjs';\nimport version from '../version';\nimport { PresetColors } from './interface';\nimport defaultDerivative from './themes/default';\nimport defaultSeedToken from './themes/seed';\nimport formatToken from './util/alias';\nimport genComponentStyleHook from './util/genComponentStyleHook';\nimport statisticToken, { merge as mergeToken, statistic } from './util/statistic';\nimport { objectType } from '../_util/type';\nimport { triggerRef, unref, defineComponent, provide, computed, inject, watch, shallowRef } from 'vue';\nconst defaultTheme = createTheme(defaultDerivative);\nexport {\n// colors\nPresetColors,\n// Statistic\nstatistic, statisticToken, mergeToken,\n// hooks\nuseStyleRegister, genComponentStyleHook };\n// ================================ Context =================================\n// To ensure snapshot stable. We disable hashed in test env.\nexport const defaultConfig = {\n token: defaultSeedToken,\n hashed: true\n};\n//defaultConfig\nconst DesignTokenContextKey = Symbol('DesignTokenContext');\nexport const globalDesignTokenApi = shallowRef();\nexport const useDesignTokenProvider = value => {\n provide(DesignTokenContextKey, value);\n watch(value, () => {\n globalDesignTokenApi.value = unref(value);\n triggerRef(globalDesignTokenApi);\n }, {\n immediate: true,\n deep: true\n });\n};\nexport const useDesignTokenInject = () => {\n return inject(DesignTokenContextKey, computed(() => globalDesignTokenApi.value || defaultConfig));\n};\nexport const DesignTokenProvider = defineComponent({\n props: {\n value: objectType()\n },\n setup(props, _ref) {\n let {\n slots\n } = _ref;\n useDesignTokenProvider(computed(() => props.value));\n return () => {\n var _a;\n return (_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots);\n };\n }\n});\n// ================================== Hook ==================================\nexport function useToken() {\n const designTokenContext = inject(DesignTokenContextKey, computed(() => globalDesignTokenApi.value || defaultConfig));\n const salt = computed(() => `${version}-${designTokenContext.value.hashed || ''}`);\n const mergedTheme = computed(() => designTokenContext.value.theme || defaultTheme);\n const cacheToken = useCacheToken(mergedTheme, computed(() => [defaultSeedToken, designTokenContext.value.token]), computed(() => ({\n salt: salt.value,\n override: _extends({\n override: designTokenContext.value.token\n }, designTokenContext.value.components),\n formatToken\n })));\n return [mergedTheme, computed(() => cacheToken.value[0]), computed(() => designTokenContext.value.hashed ? cacheToken.value[1] : '')];\n}","import { computed, inject, ref, provide } from 'vue';\nconst DisabledContextKey = Symbol('DisabledContextKey');\nexport const useInjectDisabled = () => {\n return inject(DisabledContextKey, ref(undefined));\n};\nexport const useProviderDisabled = disabled => {\n const parentDisabled = useInjectDisabled();\n provide(DisabledContextKey, computed(() => {\n var _a;\n return (_a = disabled.value) !== null && _a !== void 0 ? _a : parentDisabled.value;\n }));\n return disabled;\n};","export default {\n // Options.jsx\n items_per_page: '/ page',\n jump_to: 'Go to',\n jump_to_confirm: 'confirm',\n page: '',\n // Pagination.jsx\n prev_page: 'Previous Page',\n next_page: 'Next Page',\n prev_5: 'Previous 5 Pages',\n next_5: 'Next 5 Pages',\n prev_3: 'Previous 3 Pages',\n next_3: 'Next 3 Pages'\n};","const locale = {\n locale: 'en_US',\n today: 'Today',\n now: 'Now',\n backToToday: 'Back to today',\n ok: 'Ok',\n clear: 'Clear',\n month: 'Month',\n year: 'Year',\n timeSelect: 'select time',\n dateSelect: 'select date',\n weekSelect: 'Choose a week',\n monthSelect: 'Choose a month',\n yearSelect: 'Choose a year',\n decadeSelect: 'Choose a decade',\n yearFormat: 'YYYY',\n dateFormat: 'M/D/YYYY',\n dayFormat: 'D',\n dateTimeFormat: 'M/D/YYYY HH:mm:ss',\n monthBeforeYear: true,\n previousMonth: 'Previous month (PageUp)',\n nextMonth: 'Next month (PageDown)',\n previousYear: 'Last year (Control + left)',\n nextYear: 'Next year (Control + right)',\n previousDecade: 'Last decade',\n nextDecade: 'Next decade',\n previousCentury: 'Last century',\n nextCentury: 'Next century'\n};\nexport default locale;","const locale = {\n placeholder: 'Select time',\n rangePlaceholder: ['Start time', 'End time']\n};\nexport default locale;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport CalendarLocale from '../../vc-picker/locale/en_US';\nimport TimePickerLocale from '../../time-picker/locale/en_US';\n// Merge into a locale object\nconst locale = {\n lang: _extends({\n placeholder: 'Select date',\n yearPlaceholder: 'Select year',\n quarterPlaceholder: 'Select quarter',\n monthPlaceholder: 'Select month',\n weekPlaceholder: 'Select week',\n rangePlaceholder: ['Start date', 'End date'],\n rangeYearPlaceholder: ['Start year', 'End year'],\n rangeQuarterPlaceholder: ['Start quarter', 'End quarter'],\n rangeMonthPlaceholder: ['Start month', 'End month'],\n rangeWeekPlaceholder: ['Start week', 'End week']\n }, CalendarLocale),\n timePickerLocale: _extends({}, TimePickerLocale)\n};\n// All settings at:\n// https://github.com/ant-design/ant-design/blob/master/components/date-picker/locale/example.json\nexport default locale;","import enUS from '../../date-picker/locale/en_US';\nexport default enUS;","/* eslint-disable no-template-curly-in-string */\nimport Pagination from '../vc-pagination/locale/en_US';\nimport Calendar from '../calendar/locale/en_US';\nimport DatePicker from '../date-picker/locale/en_US';\nimport TimePicker from '../time-picker/locale/en_US';\nconst typeTemplate = '${label} is not a valid ${type}';\nconst localeValues = {\n locale: 'en',\n Pagination,\n DatePicker,\n TimePicker,\n Calendar,\n global: {\n placeholder: 'Please select'\n },\n Table: {\n filterTitle: 'Filter menu',\n filterConfirm: 'OK',\n filterReset: 'Reset',\n filterEmptyText: 'No filters',\n filterCheckall: 'Select all items',\n filterSearchPlaceholder: 'Search in filters',\n emptyText: 'No data',\n selectAll: 'Select current page',\n selectInvert: 'Invert current page',\n selectNone: 'Clear all data',\n selectionAll: 'Select all data',\n sortTitle: 'Sort',\n expand: 'Expand row',\n collapse: 'Collapse row',\n triggerDesc: 'Click to sort descending',\n triggerAsc: 'Click to sort ascending',\n cancelSort: 'Click to cancel sorting'\n },\n Tour: {\n Next: 'Next',\n Previous: 'Previous',\n Finish: 'Finish'\n },\n Modal: {\n okText: 'OK',\n cancelText: 'Cancel',\n justOkText: 'OK'\n },\n Popconfirm: {\n okText: 'OK',\n cancelText: 'Cancel'\n },\n Transfer: {\n titles: ['', ''],\n searchPlaceholder: 'Search here',\n itemUnit: 'item',\n itemsUnit: 'items',\n remove: 'Remove',\n selectCurrent: 'Select current page',\n removeCurrent: 'Remove current page',\n selectAll: 'Select all data',\n removeAll: 'Remove all data',\n selectInvert: 'Invert current page'\n },\n Upload: {\n uploading: 'Uploading...',\n removeFile: 'Remove file',\n uploadError: 'Upload error',\n previewFile: 'Preview file',\n downloadFile: 'Download file'\n },\n Empty: {\n description: 'No data'\n },\n Icon: {\n icon: 'icon'\n },\n Text: {\n edit: 'Edit',\n copy: 'Copy',\n copied: 'Copied',\n expand: 'Expand'\n },\n PageHeader: {\n back: 'Back'\n },\n Form: {\n optional: '(optional)',\n defaultValidateMessages: {\n default: 'Field validation error for ${label}',\n required: 'Please enter ${label}',\n enum: '${label} must be one of [${enum}]',\n whitespace: '${label} cannot be a blank character',\n date: {\n format: '${label} date format is invalid',\n parse: '${label} cannot be converted to a date',\n invalid: '${label} is an invalid date'\n },\n types: {\n string: typeTemplate,\n method: typeTemplate,\n array: typeTemplate,\n object: typeTemplate,\n number: typeTemplate,\n date: typeTemplate,\n boolean: typeTemplate,\n integer: typeTemplate,\n float: typeTemplate,\n regexp: typeTemplate,\n email: typeTemplate,\n url: typeTemplate,\n hex: typeTemplate\n },\n string: {\n len: '${label} must be ${len} characters',\n min: '${label} must be at least ${min} characters',\n max: '${label} must be up to ${max} characters',\n range: '${label} must be between ${min}-${max} characters'\n },\n number: {\n len: '${label} must be equal to ${len}',\n min: '${label} must be minimum ${min}',\n max: '${label} must be maximum ${max}',\n range: '${label} must be between ${min}-${max}'\n },\n array: {\n len: 'Must be ${len} ${label}',\n min: 'At least ${min} ${label}',\n max: 'At most ${max} ${label}',\n range: 'The amount of ${label} must be between ${min}-${max}'\n },\n pattern: {\n mismatch: '${label} does not match the pattern ${pattern}'\n }\n }\n },\n Image: {\n preview: 'Preview'\n },\n QRCode: {\n expired: 'QR code expired',\n refresh: 'Refresh',\n scanned: 'Scanned'\n }\n};\nexport default localeValues;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { unref, inject, defineComponent, computed } from 'vue';\nimport defaultLocaleData from './en_US';\nexport default defineComponent({\n compatConfig: {\n MODE: 3\n },\n name: 'LocaleReceiver',\n props: {\n componentName: String,\n defaultLocale: {\n type: [Object, Function]\n },\n children: {\n type: Function\n }\n },\n setup(props, _ref) {\n let {\n slots\n } = _ref;\n const localeData = inject('localeData', {});\n const locale = computed(() => {\n const {\n componentName = 'global',\n defaultLocale\n } = props;\n const locale = defaultLocale || defaultLocaleData[componentName || 'global'];\n const {\n antLocale\n } = localeData;\n const localeFromContext = componentName && antLocale ? antLocale[componentName] : {};\n return _extends(_extends({}, typeof locale === 'function' ? locale() : locale), localeFromContext || {});\n });\n const localeCode = computed(() => {\n const {\n antLocale\n } = localeData;\n const localeCode = antLocale && antLocale.locale;\n // Had use LocaleProvide but didn't set locale\n if (antLocale && antLocale.exist && !localeCode) {\n return defaultLocaleData.locale;\n }\n return localeCode;\n });\n return () => {\n const children = props.children || slots.default;\n const {\n antLocale\n } = localeData;\n return children === null || children === void 0 ? void 0 : children(locale.value, localeCode.value, antLocale);\n };\n }\n});\nexport function useLocaleReceiver(componentName, defaultLocale, propsLocale) {\n const localeData = inject('localeData', {});\n const componentLocale = computed(() => {\n const {\n antLocale\n } = localeData;\n const locale = unref(defaultLocale) || defaultLocaleData[componentName || 'global'];\n const localeFromContext = componentName && antLocale ? antLocale[componentName] : {};\n return _extends(_extends(_extends({}, typeof locale === 'function' ? locale() : locale), localeFromContext || {}), unref(propsLocale) || {});\n });\n return [componentLocale];\n}","import LocaleReceiver from '../locale/LocaleReceiver';\nexport * from '../locale/LocaleReceiver';\nexport default LocaleReceiver;","import { createVNode as _createVNode } from \"vue\";\nimport { useToken } from '../theme/internal';\nimport { TinyColor } from '@ctrl/tinycolor';\nimport { defineComponent, computed } from 'vue';\nconst Empty = defineComponent({\n compatConfig: {\n MODE: 3\n },\n setup() {\n const [, token] = useToken();\n const themeStyle = computed(() => {\n const bgColor = new TinyColor(token.value.colorBgBase);\n // Dark Theme need more dark of this\n if (bgColor.toHsl().l < 0.5) {\n return {\n opacity: 0.65\n };\n }\n return {};\n });\n return () => _createVNode(\"svg\", {\n \"style\": themeStyle.value,\n \"width\": \"184\",\n \"height\": \"152\",\n \"viewBox\": \"0 0 184 152\",\n \"xmlns\": \"http://www.w3.org/2000/svg\"\n }, [_createVNode(\"g\", {\n \"fill\": \"none\",\n \"fill-rule\": \"evenodd\"\n }, [_createVNode(\"g\", {\n \"transform\": \"translate(24 31.67)\"\n }, [_createVNode(\"ellipse\", {\n \"fill-opacity\": \".8\",\n \"fill\": \"#F5F5F7\",\n \"cx\": \"67.797\",\n \"cy\": \"106.89\",\n \"rx\": \"67.797\",\n \"ry\": \"12.668\"\n }, null), _createVNode(\"path\", {\n \"d\": \"M122.034 69.674L98.109 40.229c-1.148-1.386-2.826-2.225-4.593-2.225h-51.44c-1.766 0-3.444.839-4.592 2.225L13.56 69.674v15.383h108.475V69.674z\",\n \"fill\": \"#AEB8C2\"\n }, null), _createVNode(\"path\", {\n \"d\": \"M101.537 86.214L80.63 61.102c-1.001-1.207-2.507-1.867-4.048-1.867H31.724c-1.54 0-3.047.66-4.048 1.867L6.769 86.214v13.792h94.768V86.214z\",\n \"fill\": \"url(#linearGradient-1)\",\n \"transform\": \"translate(13.56)\"\n }, null), _createVNode(\"path\", {\n \"d\": \"M33.83 0h67.933a4 4 0 0 1 4 4v93.344a4 4 0 0 1-4 4H33.83a4 4 0 0 1-4-4V4a4 4 0 0 1 4-4z\",\n \"fill\": \"#F5F5F7\"\n }, null), _createVNode(\"path\", {\n \"d\": \"M42.678 9.953h50.237a2 2 0 0 1 2 2V36.91a2 2 0 0 1-2 2H42.678a2 2 0 0 1-2-2V11.953a2 2 0 0 1 2-2zM42.94 49.767h49.713a2.262 2.262 0 1 1 0 4.524H42.94a2.262 2.262 0 0 1 0-4.524zM42.94 61.53h49.713a2.262 2.262 0 1 1 0 4.525H42.94a2.262 2.262 0 0 1 0-4.525zM121.813 105.032c-.775 3.071-3.497 5.36-6.735 5.36H20.515c-3.238 0-5.96-2.29-6.734-5.36a7.309 7.309 0 0 1-.222-1.79V69.675h26.318c2.907 0 5.25 2.448 5.25 5.42v.04c0 2.971 2.37 5.37 5.277 5.37h34.785c2.907 0 5.277-2.421 5.277-5.393V75.1c0-2.972 2.343-5.426 5.25-5.426h26.318v33.569c0 .617-.077 1.216-.221 1.789z\",\n \"fill\": \"#DCE0E6\"\n }, null)]), _createVNode(\"path\", {\n \"d\": \"M149.121 33.292l-6.83 2.65a1 1 0 0 1-1.317-1.23l1.937-6.207c-2.589-2.944-4.109-6.534-4.109-10.408C138.802 8.102 148.92 0 161.402 0 173.881 0 184 8.102 184 18.097c0 9.995-10.118 18.097-22.599 18.097-4.528 0-8.744-1.066-12.28-2.902z\",\n \"fill\": \"#DCE0E6\"\n }, null), _createVNode(\"g\", {\n \"transform\": \"translate(149.65 15.383)\",\n \"fill\": \"#FFF\"\n }, [_createVNode(\"ellipse\", {\n \"cx\": \"20.654\",\n \"cy\": \"3.167\",\n \"rx\": \"2.849\",\n \"ry\": \"2.815\"\n }, null), _createVNode(\"path\", {\n \"d\": \"M5.698 5.63H0L2.898.704zM9.259.704h4.985V5.63H9.259z\"\n }, null)])])]);\n }\n});\nEmpty.PRESENTED_IMAGE_DEFAULT = true;\nexport default Empty;","import { createVNode as _createVNode } from \"vue\";\nimport { TinyColor } from '@ctrl/tinycolor';\nimport { computed, defineComponent } from 'vue';\nimport { useToken } from '../theme/internal';\nconst Simple = defineComponent({\n compatConfig: {\n MODE: 3\n },\n setup() {\n const [, token] = useToken();\n const color = computed(() => {\n const {\n colorFill,\n colorFillTertiary,\n colorFillQuaternary,\n colorBgContainer\n } = token.value;\n return {\n borderColor: new TinyColor(colorFill).onBackground(colorBgContainer).toHexString(),\n shadowColor: new TinyColor(colorFillTertiary).onBackground(colorBgContainer).toHexString(),\n contentColor: new TinyColor(colorFillQuaternary).onBackground(colorBgContainer).toHexString()\n };\n });\n return () => _createVNode(\"svg\", {\n \"width\": \"64\",\n \"height\": \"41\",\n \"viewBox\": \"0 0 64 41\",\n \"xmlns\": \"http://www.w3.org/2000/svg\"\n }, [_createVNode(\"g\", {\n \"transform\": \"translate(0 1)\",\n \"fill\": \"none\",\n \"fill-rule\": \"evenodd\"\n }, [_createVNode(\"ellipse\", {\n \"fill\": color.value.shadowColor,\n \"cx\": \"32\",\n \"cy\": \"33\",\n \"rx\": \"32\",\n \"ry\": \"7\"\n }, null), _createVNode(\"g\", {\n \"fill-rule\": \"nonzero\",\n \"stroke\": color.value.borderColor\n }, [_createVNode(\"path\", {\n \"d\": \"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z\"\n }, null), _createVNode(\"path\", {\n \"d\": \"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35h-40.1C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z\",\n \"fill\": color.value.contentColor\n }, null)])])]);\n }\n});\nSimple.PRESENTED_IMAGE_SIMPLE = true;\nexport default Simple;","import { genComponentStyleHook, mergeToken } from '../../theme/internal';\n// ============================== Shared ==============================\nconst genSharedEmptyStyle = token => {\n const {\n componentCls,\n margin,\n marginXS,\n marginXL,\n fontSize,\n lineHeight\n } = token;\n return {\n [componentCls]: {\n marginInline: marginXS,\n fontSize,\n lineHeight,\n textAlign: 'center',\n // 原来 &-image 没有父子结构,现在为了外层承担我们的hashId,改成父子结果\n [`${componentCls}-image`]: {\n height: token.emptyImgHeight,\n marginBottom: marginXS,\n opacity: token.opacityImage,\n img: {\n height: '100%'\n },\n svg: {\n height: '100%',\n margin: 'auto'\n }\n },\n // 原来 &-footer 没有父子结构,现在为了外层承担我们的hashId,改成父子结果\n [`${componentCls}-footer`]: {\n marginTop: margin\n },\n '&-normal': {\n marginBlock: marginXL,\n color: token.colorTextDisabled,\n [`${componentCls}-image`]: {\n height: token.emptyImgHeightMD\n }\n },\n '&-small': {\n marginBlock: marginXS,\n color: token.colorTextDisabled,\n [`${componentCls}-image`]: {\n height: token.emptyImgHeightSM\n }\n }\n }\n };\n};\n// ============================== Export ==============================\nexport default genComponentStyleHook('Empty', token => {\n const {\n componentCls,\n controlHeightLG\n } = token;\n const emptyToken = mergeToken(token, {\n emptyImgCls: `${componentCls}-img`,\n emptyImgHeight: controlHeightLG * 2.5,\n emptyImgHeightMD: controlHeightLG,\n emptyImgHeightSM: controlHeightLG * 0.875\n });\n return [genSharedEmptyStyle(emptyToken)];\n});","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { createVNode as _createVNode } from \"vue\";\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { defineComponent, h } from 'vue';\nimport classNames from '../_util/classNames';\nimport LocaleReceiver from '../locale-provider/LocaleReceiver';\nimport DefaultEmptyImg from './empty';\nimport SimpleEmptyImg from './simple';\nimport { filterEmpty } from '../_util/props-util';\nimport { anyType, objectType, withInstall } from '../_util/type';\nimport useConfigInject from '../config-provider/hooks/useConfigInject';\nimport useStyle from './style';\nexport const emptyProps = () => ({\n prefixCls: String,\n imageStyle: objectType(),\n image: anyType(),\n description: anyType()\n});\nconst Empty = defineComponent({\n name: 'AEmpty',\n compatConfig: {\n MODE: 3\n },\n inheritAttrs: false,\n props: emptyProps(),\n setup(props, _ref) {\n let {\n slots = {},\n attrs\n } = _ref;\n const {\n direction,\n prefixCls: prefixClsRef\n } = useConfigInject('empty', props);\n const [wrapSSR, hashId] = useStyle(prefixClsRef);\n return () => {\n var _a, _b;\n const prefixCls = prefixClsRef.value;\n const _c = _extends(_extends({}, props), attrs),\n {\n image: mergedImage = ((_a = slots.image) === null || _a === void 0 ? void 0 : _a.call(slots)) || h(DefaultEmptyImg),\n description = ((_b = slots.description) === null || _b === void 0 ? void 0 : _b.call(slots)) || undefined,\n imageStyle,\n class: className = ''\n } = _c,\n restProps = __rest(_c, [\"image\", \"description\", \"imageStyle\", \"class\"]);\n const image = typeof mergedImage === 'function' ? mergedImage() : mergedImage;\n const isNormal = typeof image === 'object' && 'type' in image && image.type.PRESENTED_IMAGE_SIMPLE;\n return wrapSSR(_createVNode(LocaleReceiver, {\n \"componentName\": \"Empty\",\n \"children\": locale => {\n const des = typeof description !== 'undefined' ? description : locale.description;\n const alt = typeof des === 'string' ? des : 'empty';\n let imageNode = null;\n if (typeof image === 'string') {\n imageNode = _createVNode(\"img\", {\n \"alt\": alt,\n \"src\": image\n }, null);\n } else {\n imageNode = image;\n }\n return _createVNode(\"div\", _objectSpread({\n \"class\": classNames(prefixCls, className, hashId.value, {\n [`${prefixCls}-normal`]: isNormal,\n [`${prefixCls}-rtl`]: direction.value === 'rtl'\n })\n }, restProps), [_createVNode(\"div\", {\n \"class\": `${prefixCls}-image`,\n \"style\": imageStyle\n }, [imageNode]), des && _createVNode(\"p\", {\n \"class\": `${prefixCls}-description`\n }, [des]), slots.default && _createVNode(\"div\", {\n \"class\": `${prefixCls}-footer`\n }, [filterEmpty(slots.default())])]);\n }\n }, null));\n };\n }\n});\nEmpty.PRESENTED_IMAGE_DEFAULT = () => h(DefaultEmptyImg);\nEmpty.PRESENTED_IMAGE_SIMPLE = () => h(SimpleEmptyImg);\nexport default withInstall(Empty);","import { createVNode as _createVNode } from \"vue\";\nimport Empty from '../empty';\nimport useConfigInject from './hooks/useConfigInject';\nexport const DefaultRenderEmpty = props => {\n const {\n prefixCls\n } = useConfigInject('empty', props);\n const renderHtml = componentName => {\n switch (componentName) {\n case 'Table':\n case 'List':\n return _createVNode(Empty, {\n \"image\": Empty.PRESENTED_IMAGE_SIMPLE\n }, null);\n case 'Select':\n case 'TreeSelect':\n case 'Cascader':\n case 'Transfer':\n case 'Mentions':\n return _createVNode(Empty, {\n \"image\": Empty.PRESENTED_IMAGE_SIMPLE,\n \"class\": `${prefixCls.value}-small`\n }, null);\n default:\n return _createVNode(Empty, null, null);\n }\n };\n return renderHtml(props.componentName);\n};\nfunction renderEmpty(componentName) {\n return _createVNode(DefaultRenderEmpty, {\n \"componentName\": componentName\n }, null);\n}\nexport default renderEmpty;","import { computed, inject, ref, provide } from 'vue';\nconst SizeContextKey = Symbol('SizeContextKey');\nexport const useInjectSize = () => {\n return inject(SizeContextKey, ref(undefined));\n};\nexport const useProviderSize = size => {\n const parentSize = useInjectSize();\n provide(SizeContextKey, computed(() => size.value || parentSize.value));\n return size;\n};","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { computed, h, inject } from 'vue';\nimport { defaultConfigProvider, configProviderKey } from '../context';\nimport { useInjectDisabled } from '../DisabledContext';\nimport { DefaultRenderEmpty } from '../renderEmpty';\nimport { useInjectSize } from '../SizeContext';\nexport default ((name, props) => {\n const sizeContext = useInjectSize();\n const disabledContext = useInjectDisabled();\n const configProvider = inject(configProviderKey, _extends(_extends({}, defaultConfigProvider), {\n renderEmpty: name => h(DefaultRenderEmpty, {\n componentName: name\n })\n }));\n const prefixCls = computed(() => configProvider.getPrefixCls(name, props.prefixCls));\n const direction = computed(() => {\n var _a, _b;\n return (_a = props.direction) !== null && _a !== void 0 ? _a : (_b = configProvider.direction) === null || _b === void 0 ? void 0 : _b.value;\n });\n const iconPrefixCls = computed(() => {\n var _a;\n return (_a = props.iconPrefixCls) !== null && _a !== void 0 ? _a : configProvider.iconPrefixCls.value;\n });\n const rootPrefixCls = computed(() => configProvider.getPrefixCls());\n const autoInsertSpaceInButton = computed(() => {\n var _a;\n return (_a = configProvider.autoInsertSpaceInButton) === null || _a === void 0 ? void 0 : _a.value;\n });\n const renderEmpty = configProvider.renderEmpty;\n const space = configProvider.space;\n const pageHeader = configProvider.pageHeader;\n const form = configProvider.form;\n const getTargetContainer = computed(() => {\n var _a, _b;\n return (_a = props.getTargetContainer) !== null && _a !== void 0 ? _a : (_b = configProvider.getTargetContainer) === null || _b === void 0 ? void 0 : _b.value;\n });\n const getPopupContainer = computed(() => {\n var _a, _b, _c;\n return (_b = (_a = props.getContainer) !== null && _a !== void 0 ? _a : props.getPopupContainer) !== null && _b !== void 0 ? _b : (_c = configProvider.getPopupContainer) === null || _c === void 0 ? void 0 : _c.value;\n });\n const dropdownMatchSelectWidth = computed(() => {\n var _a, _b;\n return (_a = props.dropdownMatchSelectWidth) !== null && _a !== void 0 ? _a : (_b = configProvider.dropdownMatchSelectWidth) === null || _b === void 0 ? void 0 : _b.value;\n });\n const virtual = computed(() => {\n var _a;\n return (props.virtual === undefined ? ((_a = configProvider.virtual) === null || _a === void 0 ? void 0 : _a.value) !== false : props.virtual !== false) && dropdownMatchSelectWidth.value !== false;\n });\n const size = computed(() => props.size || sizeContext.value);\n const autocomplete = computed(() => {\n var _a, _b, _c;\n return (_a = props.autocomplete) !== null && _a !== void 0 ? _a : (_c = (_b = configProvider.input) === null || _b === void 0 ? void 0 : _b.value) === null || _c === void 0 ? void 0 : _c.autocomplete;\n });\n const disabled = computed(() => {\n var _a;\n return (_a = props.disabled) !== null && _a !== void 0 ? _a : disabledContext.value;\n });\n const csp = computed(() => {\n var _a;\n return (_a = props.csp) !== null && _a !== void 0 ? _a : configProvider.csp;\n });\n const wave = computed(() => {\n var _a, _b;\n return (_a = props.wave) !== null && _a !== void 0 ? _a : (_b = configProvider.wave) === null || _b === void 0 ? void 0 : _b.value;\n });\n return {\n configProvider,\n prefixCls,\n direction,\n size,\n getTargetContainer,\n getPopupContainer,\n space,\n pageHeader,\n form,\n autoInsertSpaceInButton,\n renderEmpty,\n virtual,\n dropdownMatchSelectWidth,\n rootPrefixCls,\n getPrefixCls: configProvider.getPrefixCls,\n autocomplete,\n csp,\n iconPrefixCls,\n disabled,\n select: configProvider.select,\n wave\n };\n});","export function getMotion(_ref) {\n let {\n prefixCls,\n animation,\n transitionName\n } = _ref;\n if (animation) {\n return {\n name: `${prefixCls}-${animation}`\n };\n }\n if (transitionName) {\n return {\n name: transitionName\n };\n }\n return {};\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { nextTick } from 'vue';\nimport { tuple } from './type';\nconst SelectPlacements = tuple('bottomLeft', 'bottomRight', 'topLeft', 'topRight');\nconst getTransitionDirection = placement => {\n if (placement !== undefined && (placement === 'topLeft' || placement === 'topRight')) {\n return `slide-down`;\n }\n return `slide-up`;\n};\nexport const getTransitionProps = function (transitionName) {\n let opt = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const transitionProps = transitionName ? _extends({\n name: transitionName,\n appear: true,\n // type: 'animation',\n // appearFromClass: `${transitionName}-appear ${transitionName}-appear-prepare`,\n // appearActiveClass: `antdv-base-transtion`,\n // appearToClass: `${transitionName}-appear ${transitionName}-appear-active`,\n enterFromClass: `${transitionName}-enter ${transitionName}-enter-prepare ${transitionName}-enter-start`,\n enterActiveClass: `${transitionName}-enter ${transitionName}-enter-prepare`,\n enterToClass: `${transitionName}-enter ${transitionName}-enter-active`,\n leaveFromClass: ` ${transitionName}-leave`,\n leaveActiveClass: `${transitionName}-leave ${transitionName}-leave-active`,\n leaveToClass: `${transitionName}-leave ${transitionName}-leave-active`\n }, opt) : _extends({\n css: false\n }, opt);\n return transitionProps;\n};\nexport const getTransitionGroupProps = function (transitionName) {\n let opt = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const transitionProps = transitionName ? _extends({\n name: transitionName,\n appear: true,\n // appearFromClass: `${transitionName}-appear ${transitionName}-appear-prepare`,\n appearActiveClass: `${transitionName}`,\n appearToClass: `${transitionName}-appear ${transitionName}-appear-active`,\n enterFromClass: `${transitionName}-appear ${transitionName}-enter ${transitionName}-appear-prepare ${transitionName}-enter-prepare`,\n enterActiveClass: `${transitionName}`,\n enterToClass: `${transitionName}-enter ${transitionName}-appear ${transitionName}-appear-active ${transitionName}-enter-active`,\n leaveActiveClass: `${transitionName} ${transitionName}-leave`,\n leaveToClass: `${transitionName}-leave-active`\n }, opt) : _extends({\n css: false\n }, opt);\n return transitionProps;\n};\n// ================== Collapse Motion ==================\nconst getCollapsedHeight = () => ({\n height: 0,\n opacity: 0\n});\nconst getRealHeight = node => ({\n height: `${node.scrollHeight}px`,\n opacity: 1\n});\nconst getCurrentHeight = node => ({\n height: `${node.offsetHeight}px`\n});\nconst collapseMotion = function () {\n let name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'ant-motion-collapse';\n let style = arguments.length > 1 ? arguments[1] : undefined;\n let className = arguments.length > 2 ? arguments[2] : undefined;\n return {\n name,\n appear: true,\n css: true,\n onBeforeEnter: node => {\n className.value = name;\n style.value = getCollapsedHeight(node);\n },\n onEnter: node => {\n nextTick(() => {\n style.value = getRealHeight(node);\n });\n },\n onAfterEnter: () => {\n className.value = '';\n style.value = {};\n },\n onBeforeLeave: node => {\n className.value = name;\n style.value = getCurrentHeight(node);\n },\n onLeave: node => {\n setTimeout(() => {\n style.value = getCollapsedHeight(node);\n });\n },\n onAfterLeave: () => {\n className.value = '';\n style.value = {};\n }\n };\n};\nconst getTransitionName = (rootPrefixCls, motion, transitionName) => {\n if (transitionName !== undefined) {\n return transitionName;\n }\n return `${rootPrefixCls}-${motion}`;\n};\nexport { collapseMotion, getTransitionName, getTransitionDirection };","import { computed, inject, provide } from 'vue';\nconst PortalContextKey = Symbol('PortalContextKey');\nexport const useProvidePortal = function (instance) {\n let config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n inTriggerContext: true\n };\n provide(PortalContextKey, {\n inTriggerContext: config.inTriggerContext,\n shouldRender: computed(() => {\n const {\n sPopupVisible,\n popupRef,\n forceRender,\n autoDestroy\n } = instance || {};\n // if (popPortal) return true;\n let shouldRender = false;\n if (sPopupVisible || popupRef || forceRender) {\n shouldRender = true;\n }\n if (!sPopupVisible && autoDestroy) {\n shouldRender = false;\n }\n return shouldRender;\n })\n });\n};\nexport const useInjectPortal = () => {\n useProvidePortal({}, {\n inTriggerContext: false\n });\n const portalContext = inject(PortalContextKey, {\n shouldRender: computed(() => false),\n inTriggerContext: false\n });\n return {\n shouldRender: computed(() => portalContext.shouldRender.value || portalContext.inTriggerContext === false)\n };\n};","import { createVNode as _createVNode, resolveDirective as _resolveDirective } from \"vue\";\nimport PropTypes from './vue-types';\nimport { defineComponent, nextTick, onBeforeMount, onMounted, onUpdated, Teleport, watch } from 'vue';\nimport { useInjectPortal } from '../vc-trigger/context';\nexport default defineComponent({\n compatConfig: {\n MODE: 3\n },\n name: 'Portal',\n inheritAttrs: false,\n props: {\n getContainer: PropTypes.func.isRequired,\n didUpdate: Function\n },\n setup(props, _ref) {\n let {\n slots\n } = _ref;\n let isSSR = true;\n // getContainer 不会改变,不用响应式\n let container;\n const {\n shouldRender\n } = useInjectPortal();\n function setContainer() {\n if (shouldRender.value) {\n container = props.getContainer();\n }\n }\n onBeforeMount(() => {\n isSSR = false;\n // drawer\n setContainer();\n });\n onMounted(() => {\n if (container) return;\n // https://github.com/vueComponent/ant-design-vue/issues/6937\n setContainer();\n });\n const stopWatch = watch(shouldRender, () => {\n if (shouldRender.value && !container) {\n container = props.getContainer();\n }\n if (container) {\n stopWatch();\n }\n });\n onUpdated(() => {\n nextTick(() => {\n var _a;\n if (shouldRender.value) {\n (_a = props.didUpdate) === null || _a === void 0 ? void 0 : _a.call(props, props);\n }\n });\n });\n // onBeforeUnmount(() => {\n // if (container && container.parentNode) {\n // container.parentNode.removeChild(container);\n // }\n // });\n return () => {\n var _a;\n if (!shouldRender.value) return null;\n if (isSSR) {\n return (_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots);\n }\n return container ? _createVNode(Teleport, {\n \"to\": container\n }, slots) : null;\n };\n }\n});","import type { TableColumn } from 'liyu-pc-base/typing';\nimport type { Record, SearchConfig } from 'liyu-pc-base/components/remotePages/typing';\n\nimport { reactive } from 'vue';\n\nexport default () => {\n const search_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'inline',\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '接口名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写接口名称',\n },\n {\n type: 'input',\n name: 'url',\n label: '接口url',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写接口url',\n },\n {\n type: 'radio',\n name: 'is_auth',\n label: '是否需要授权',\n disabled: false,\n labelKey: 'name',\n valueKey: 'value',\n placeholder: '请选择是否授权',\n datasource: 'is_auth',\n mode: 'default',\n },\n {\n type: 'radio',\n name: 'is_active',\n label: '状态',\n disabled: false,\n defaultValue: '',\n labelKey: 'name',\n valueKey: 'value',\n placeholder: '请选择状态',\n datasource: 'is_active',\n mode: 'default',\n },\n ],\n rules: {},\n model: reactive({\n is_active: true,\n is_auth: '',\n name: '',\n url: null,\n }),\n options: {\n is_active: [\n { name: '全部', value: '' },\n { name: '正常', value: true },\n { name: '作废', value: false },\n ],\n is_auth: [\n { name: '全部', value: '' },\n { name: '是', value: true },\n { name: '否', value: false },\n ],\n },\n default_column_field: ['is_auth'],\n };\n\n const edit_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: [],\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '接口名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '接口名称',\n },\n {\n type: 'input',\n name: 'url',\n label: '绝对路径',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '绝对路径',\n },\n {\n type: 'radio',\n name: 'is_auth', // 传值字段\n label: '是否需要授权',\n disabled: false,\n labelKey: 'name', // options数据\n valueKey: 'value',\n placeholder: '请选择是否授权',\n datasource: 'is_auth', // 接参字段\n },\n ],\n rules: {\n name: [{ required: true, message: '请输入接口名称' }],\n url: [{ required: true, message: '请输入绝对路径' }],\n },\n model: {\n name: '',\n url: '',\n is_auth: null,\n },\n options: {\n is_auth: [\n { name: '是', value: true },\n { name: '否', value: false },\n ],\n },\n };\n\n const update_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: [],\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '接口名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '接口名称',\n },\n {\n type: 'input',\n name: 'url',\n label: '绝对路径',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '绝对路径',\n },\n {\n type: 'radio',\n name: 'is_auth', // 传值字段\n label: '是否需要授权',\n disabled: false,\n labelKey: 'name', // options数据\n valueKey: 'value',\n placeholder: '请选择是否授权',\n datasource: 'is_auth', // 接参字段\n },\n ],\n rules: {},\n model: reactive({\n name: '',\n url: '',\n is_auth: null,\n }),\n options: {\n is_auth: [\n { name: '是', value: true },\n { name: '否', value: false },\n ],\n },\n };\n\n const titleList = {\n title: '接口列表',\n addModalTitle: '新建接口',\n updateTitle: '修改',\n is_create: false, // 是否有【新建】按钮\n is_update: false, // 是否有【修改】按钮\n is_remove: false, // 是否有【删除】按钮\n is_recover: false, // 是否有【恢复】按钮\n };\n\n const api_fields: Record = {\n update: {\n apiurl_id: 'id',\n },\n delete: {\n apiurl_id: 'id',\n },\n recover: {\n apiurl_id: 'id',\n },\n updateData: {\n apiurl_id: 'id',\n },\n };\n\n const baseColumns: TableColumn[] = [\n {\n title: '序号',\n width: 50,\n dataIndex: 'index',\n checked: true,\n fixed: 'left',\n },\n {\n title: '名称',\n dataIndex: 'name',\n checked: true,\n fixed: 'left',\n },\n {\n title: 'url',\n dataIndex: 'url',\n checked: true,\n },\n {\n title: '是否需要授权',\n width: 130,\n dataIndex: 'is_auth',\n cellComponent: 'boolean',\n checked: true,\n name1: '是',\n name2: '否',\n },\n {\n title: '是否可用',\n width: 100,\n dataIndex: 'is_active',\n checked: true,\n resizable: true,\n cellComponent: 'boolean',\n name1: '可用',\n name2: '禁用',\n filterMultiple: false,\n filters: [\n { text: '全部', value: '' },\n { text: '可用', value: 'true' },\n { text: '禁用', value: 'false' },\n ],\n },\n ];\n\n return {\n searchConfig: search_config,\n formModalConfig: edit_model_config,\n updateFormModalConfig: update_model_config,\n queryData: '/permission/query_url_not_bind_menu_list',\n addData: null,\n updateData: null,\n removeData: null,\n recoverData: null,\n baseColumns: baseColumns,\n titleList: titleList,\n api_fields: api_fields,\n base_search_condition_config_list: [],\n default_search_condition_config_list: [[]],\n condition_group_config_list: [],\n is_show_advantage: false,\n is_show_normal_search: true,\n is_only_show_advantage: false,\n is_only_show_normal_search: true,\n queryConditionGroupData: null,\n isView: false,\n };\n};\n","import { useRequest } from 'liyu-pc-base/init-plugin';\n\nexport async function queryApiurl(params?: { [key: string]: any }): Promise<RoleResponse> {\n return useRequest().post('/permission/query_apiurl_list', params);\n}\n\nexport async function removeUrl(params: Record<string, any>) {\n return useRequest().post('/permission/delete_apiurl', params);\n}\n\nexport async function recoverUrl(params: Record<string, any>) {\n return useRequest().post('/permission/recover_apiurl', params);\n}\n\nexport async function addURL(params: Record<string, any>) {\n return useRequest().post('/permission/create_apiurl', params);\n}\n\nexport async function updateUrl(params: Record<string, any>) {\n return useRequest().post('/permission/update_apiurl', params);\n}\n\nexport async function import_apiurl(params: Record<string, any>) {\n return useRequest().post('/permission/import_apiurl', params);\n}\n\nexport async function queryUrlNotBind(params?: { [key: string]: any }): Promise<RoleResponse> {\n return useRequest().post('/permission/query_url_not_bind_menu_list', params);\n}\n\nexport async function change_apiurl_auth(params?: { [key: string]: any }): Promise<RoleResponse> {\n return useRequest().post('/permission/change_apiurl_auth', params);\n}\n\ninterface RuleItem {\n key: string | number;\n id: number;\n callNo: number;\n avatar: string;\n desc: string;\n disabled: false;\n href: string;\n name: string;\n owner: string;\n progress: number;\n status: number;\n updatedAt: string;\n createdAt: string;\n}\n\ninterface RoleResponse {\n current: number;\n data: RuleItem[];\n pageSize: string;\n success: boolean;\n total: number;\n}\n","import modalBox from 'liyu-pc-base/components/form-modal/modal-tools';\nimport { createVNode, reactive } from 'vue';\nimport { message, Modal } from 'ant-design-vue';\nimport { change_apiurl_auth, import_apiurl } from 'liyu-pc-base/api/permission/apiurl-manage';\nimport { ExclamationCircleOutlined } from '@ant-design/icons-vue';\nimport { event_obj } from 'liyu-pc-base/init-plugin';\nimport type { BtnListConfig, HeadBtnListConfig } from 'liyu-pc-base/api/typing';\nexport const btn_list: BtnListConfig = [\n {\n name: '设为需要授权',\n type: 'dropdown',\n clazz: 'primary',\n is_show: ({ record }) => {\n return record.is_active && !record.is_auth;\n },\n cb: ({ record, current_org }) => {\n Modal.confirm({\n title: '是否设为需要授权?',\n icon: createVNode(ExclamationCircleOutlined),\n onOk() {\n return new Promise(resolve => {\n change_apiurl_auth({\n org_id: current_org.id,\n apiurl_id: record.id,\n is_auth: true,\n }).then((res: any) => {\n message.success('操作成功');\n Object.assign(record, res);\n resolve(null);\n event_obj().emit('refresh');\n });\n }).catch(() => console.log('Oops errors!'));\n },\n onCancel() {},\n });\n },\n },\n {\n name: '设为无需授权',\n type: 'dropdown',\n clazz: 'primary',\n is_show: ({ record }) => {\n return record.is_active && record.is_auth;\n },\n cb: ({ record, current_org }) => {\n Modal.confirm({\n title: '是否设为无需授权?',\n icon: createVNode(ExclamationCircleOutlined),\n onOk() {\n return new Promise(resolve => {\n change_apiurl_auth({\n org_id: current_org.id,\n apiurl_id: record.id,\n is_auth: false,\n }).then((res: any) => {\n message.success('操作成功');\n Object.assign(record, res);\n resolve(null);\n event_obj().emit('refresh');\n });\n }).catch(() => console.log('Oops errors!'));\n },\n onCancel() {},\n });\n },\n },\n];\nexport const config = {\n creatCol: [],\n updateCol: [],\n};\n\nexport const head_btn_list: HeadBtnListConfig = [\n {\n name: '导入接口',\n type: 'dropdown',\n clazz: 'primary',\n cb: () => {\n const editModal = reactive({\n visible: true,\n title: '导入api接口json文件',\n loading: false,\n form: {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: [],\n },\n fields: [\n {\n type: 'textarea',\n name: 'api_json',\n label: '接口JSON',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '接口JSON',\n },\n ],\n rules: {\n api_json: [{ username: true, message: '请填写账号名称' }],\n },\n model: reactive({\n org_id: current_org.id,\n api_json: '',\n }),\n },\n options: {},\n ok: (payload: any) => {\n return new Promise(resolve => {\n editModal.loading = true;\n import_apiurl({\n ...payload,\n })\n .then(() => {\n message.success('导入成功');\n resolve(null);\n })\n .finally(() => {\n editModal.loading = false;\n });\n });\n },\n });\n modalBox(editModal);\n },\n },\n];\n","import type { TableColumn } from 'liyu-pc-base/typing';\nimport type { Record, SearchConfig } from 'liyu-pc-base/components/remotePages/typing';\nimport { btn_list, config, head_btn_list } from './permission-apiurl-config';\nimport { event_obj } from 'liyu-pc-base/init-plugin';\nimport { reactive } from 'vue';\n\nexport default () => {\n const search_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'inline',\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '接口名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写接口名称',\n },\n {\n type: 'input',\n name: 'url',\n label: '绝对路径url',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写绝对路径url',\n },\n {\n type: 'radio',\n name: 'is_auth',\n label: '是否需要授权',\n disabled: false,\n labelKey: 'name',\n valueKey: 'value',\n placeholder: '请选择是否授权',\n datasource: 'is_auth',\n mode: 'default',\n },\n {\n type: 'radio',\n name: 'is_active',\n label: '状态',\n disabled: false,\n defaultValue: '',\n labelKey: 'name',\n valueKey: 'value',\n placeholder: '请选择状态',\n datasource: 'is_active',\n mode: 'default',\n },\n ],\n rules: {},\n model: reactive({\n is_active: true,\n is_auth: '',\n name: '',\n url: '',\n }),\n options: {\n is_active: [\n { name: '全部', value: '' },\n { name: '正常', value: true },\n { name: '作废', value: false },\n ],\n is_auth: [\n { name: '全部', value: '' },\n { name: '是', value: true },\n { name: '否', value: false },\n ],\n },\n default_column_field: ['is_auth', 'is_active'],\n };\n\n const edit_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: config.creatCol,\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '接口名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '接口名称',\n },\n {\n type: 'input',\n name: 'url',\n label: '绝对路径',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '绝对路径',\n },\n {\n type: 'radio',\n name: 'is_auth', // 传值字段\n label: '是否需要授权',\n disabled: false,\n labelKey: 'name', // options数据\n valueKey: 'value',\n placeholder: '请选择是否授权',\n datasource: 'is_auth', // 接参字段\n },\n ],\n rules: {\n name: [{ required: true, message: '请输入接口名称' }],\n url: [{ required: true, message: '请输入绝对路径' }],\n },\n model: {\n name: '',\n url: '',\n is_auth: null,\n },\n options: {\n is_auth: [\n { name: '是', value: true },\n { name: '否', value: false },\n ],\n },\n };\n\n const update_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: config.creatCol,\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '接口名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '接口名称',\n },\n {\n type: 'input',\n name: 'url',\n label: '绝对路径',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '绝对路径',\n },\n {\n type: 'radio',\n name: 'is_auth', // 传值字段\n label: '是否需要授权',\n disabled: false,\n labelKey: 'name', // options数据\n valueKey: 'value',\n placeholder: '请选择是否授权',\n datasource: 'is_auth', // 接参字段\n },\n ],\n rules: {},\n model: reactive({\n name: '',\n url: '',\n is_auth: null,\n update_field_list: ['name', 'url', 'is_auth'],\n }),\n options: {\n is_auth: [\n { name: '是', value: true },\n { name: '否', value: false },\n ],\n },\n };\n\n const titleList = {\n title: '接口列表',\n addModalTitle: '新建接口',\n updateTitle: '修改',\n is_create: true, // 是否有【新建】按钮\n is_update: true, // 是否有【修改】按钮\n is_remove: true, // 是否有【删除】按钮\n is_recover: true, // 是否有【恢复】按钮\n };\n\n const api_fields: Record = {\n update: {\n apiurl_id: 'id',\n },\n delete: {\n apiurl_id: 'id',\n },\n recover: {\n apiurl_id: 'id',\n },\n updateData: {\n apiurl_id: 'id',\n },\n };\n\n const baseColumns: TableColumn[] = [\n {\n title: '序号',\n width: 50,\n dataIndex: 'index',\n checked: true,\n fixed: 'left',\n },\n {\n title: '名称',\n dataIndex: 'name',\n checked: true,\n fixed: 'left',\n },\n {\n title: 'url',\n dataIndex: 'url',\n checked: true,\n },\n {\n title: '接口对应菜单',\n dataIndex: 'menu_list',\n checked: true,\n cellComponent: 'menu_list',\n },\n {\n title: '是否需要授权',\n width: 130,\n dataIndex: 'is_auth',\n checked: true,\n cellComponent: 'boolean',\n name1: '是',\n name2: '否',\n },\n {\n title: '是否可用',\n width: 100,\n dataIndex: 'is_active',\n checked: true,\n resizable: true,\n cellComponent: 'boolean',\n name1: '可用',\n name2: '禁用',\n filterMultiple: false,\n filters: [\n { text: '全部', value: '' },\n { text: '可用', value: 'true' },\n { text: '禁用', value: 'false' },\n ],\n },\n {\n title: '操作',\n width: 170,\n dataIndex: 'action',\n checked: true,\n cellComponent: 'action',\n },\n ];\n\n return {\n searchConfig: search_config,\n formModalConfig: edit_model_config,\n updateFormModalConfig: update_model_config,\n queryData: '/permission/query_apiurl_list',\n addData: '/permission/create_apiurl',\n updateData: '/permission/update_apiurl',\n removeData: '/permission/delete_apiurl',\n recoverData: '/permission/recover_apiurl',\n baseColumns: baseColumns,\n titleList: titleList,\n api_fields: api_fields,\n btn_list: btn_list,\n head_btn_list: head_btn_list,\n event_obj: event_obj(),\n base_search_condition_config_list: [],\n default_search_condition_config_list: [[]],\n condition_group_config_list: [],\n is_show_advantage: false,\n is_show_normal_search: true,\n is_only_show_advantage: false,\n is_only_show_normal_search: true,\n queryConditionGroupData: null,\n isView: false,\n };\n};\n","import { TableColumn } from 'liyu-pc-base/typing';\nimport { Record, SearchConfig } from 'liyu-pc-base/components/remotePages/typing';\n\nimport { reactive } from 'vue';\n\nexport default () => {\n const search_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'inline',\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写名称',\n },\n {\n type: 'input',\n name: 'corpid',\n label: 'CorpID',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写CorpID',\n },\n {\n type: 'input',\n name: 'appid',\n label: 'APPID',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写APPID',\n },\n\n {\n type: 'input',\n name: 'appkey',\n label: 'APPKey',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写APPKey',\n },\n {\n type: 'input',\n name: 'appsecret',\n label: 'APPSecret',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写APPSecret',\n },\n {\n type: 'radio',\n name: 'is_active',\n label: '状态',\n mode: 'default',\n disabled: false,\n defaultValue: '',\n labelKey: 'name',\n valueKey: 'value',\n placeholder: '请选择状态',\n datasource: 'is_active',\n },\n ],\n rules: {},\n model: reactive({\n name: '',\n appid: '',\n corpid: '',\n appkey: '',\n appsecret: '',\n }),\n options: {\n is_active: [\n { name: '全部', value: '' },\n { name: '正常', value: true },\n { name: '作废', value: false },\n ],\n },\n };\n\n const edit_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'horizontal',\n col: [],\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写名称',\n },\n {\n type: 'input',\n name: 'corpid',\n label: 'CorpID',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写CorpID',\n },\n {\n type: 'input',\n name: 'appid',\n label: 'APPID',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写APPID',\n },\n {\n type: 'input',\n name: 'appkey',\n label: 'APPKey',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写APPKey',\n },\n {\n type: 'input',\n name: 'appsecret',\n label: 'APPSecret',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写APPSecret',\n },\n ],\n rules: {\n name: [{ required: true, message: '请输入名称' }],\n corpid: [{ required: true, message: '请填写CorpID' }],\n appid: [{ required: true, message: '请填写APPID' }],\n appkey: [{ required: true, message: '请填写APPKey' }],\n appsecret: [{ required: true, message: '请填写APPSecret' }],\n },\n model: {\n name: '',\n corpid: '',\n appid: '',\n appkey: '',\n appsecret: '',\n },\n options: {},\n };\n\n const update_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'horizontal',\n col: [],\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写名称',\n },\n {\n type: 'input',\n name: 'corpid',\n label: 'CorpID',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写CorpID',\n },\n {\n type: 'input',\n name: 'appid',\n label: 'APPID',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写APPID',\n },\n {\n type: 'input',\n name: 'appkey',\n label: 'APPKey',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写APPKey',\n },\n {\n type: 'input',\n name: 'appsecret',\n label: 'APPSecret',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写APPSecret',\n },\n ],\n rules: {\n name: [{ required: true, message: '请输入名称' }],\n corpid: [{ required: true, message: '请填写CorpID' }],\n appid: [{ required: true, message: '请填写APPID' }],\n appkey: [{ required: true, message: '请填写APPKey' }],\n appsecret: [{ required: true, message: '请填写APPSecret' }],\n },\n model: reactive({\n name: '',\n corpid: '',\n appid: '',\n appkey: '',\n appsecret: '',\n }),\n options: {},\n };\n\n const titleList = {\n title: '钉钉管理',\n addModalTitle: '新建钉钉信息',\n updateTitle: '修改',\n is_create: true, // 是否有【新建】按钮\n is_update: true, // 是否有【修改】按钮\n is_remove: true, // 是否有【删除】按钮\n is_recover: true, // 是否有【恢复】按钮\n };\n\n const api_fields: Record = {\n update: {\n token_id: 'id',\n },\n delete: {\n token_id: 'id',\n },\n recover: {\n token_id: 'id',\n },\n updateData: {\n token_id: 'id',\n },\n };\n\n const baseColumns: TableColumn[] = [\n {\n title: '序号',\n width: 50,\n dataIndex: 'index',\n checked: true,\n fixed: 'left',\n },\n {\n title: '名称',\n width: 150,\n dataIndex: 'name',\n checked: true,\n fixed: 'left',\n },\n\n {\n title: 'CorpID',\n dataIndex: 'corpid',\n checked: true,\n },\n {\n title: 'APPID',\n dataIndex: 'appid',\n checked: true,\n },\n {\n title: 'APPKey',\n dataIndex: 'appkey',\n checked: true,\n },\n {\n title: 'APPSecret',\n dataIndex: 'appsecret',\n checked: true,\n },\n\n {\n title: 'PC端首页地址',\n dataIndex: 'pcurl',\n checked: true,\n },\n\n {\n title: '是否可用',\n width: 100,\n dataIndex: 'is_active',\n checked: true,\n resizable: true,\n cellComponent: 'boolean',\n name1: '可用',\n name2: '禁用',\n filterMultiple: false,\n filters: [\n { text: '全部', value: '' },\n { text: '可用', value: 'true' },\n { text: '禁用', value: 'false' },\n ],\n },\n {\n title: '操作',\n checked: true,\n width: 50,\n dataIndex: 'action',\n cellComponent: 'action',\n fixed: 'right',\n },\n ];\n return {\n searchConfig: search_config,\n formModalConfig: edit_model_config,\n updateFormModalConfig: update_model_config,\n queryData: '/dd/query_ding_appinfo_list',\n addData: '/dd/create_ding_appinfo',\n updateData: '/dd/update_ding_appinfo',\n removeData: '/dd/delete_ding_appinfo',\n recoverData: '/dd/recover_ding_appinfo',\n baseColumns: baseColumns,\n titleList: titleList,\n api_fields: api_fields,\n base_search_condition_config_list: [],\n default_search_condition_config_list: [[]],\n condition_group_config_list: [],\n is_show_advantage: false,\n is_show_normal_search: true,\n is_only_show_advantage: false,\n is_only_show_normal_search: true,\n queryConditionGroupData: null,\n isView: false,\n is_pagination: false,\n };\n};\n","import { createVNode, reactive } from 'vue';\nimport { message, Modal, notification } from 'ant-design-vue';\nimport { event_obj, useEnv, useMenuComponents, useUserStore } from 'liyu-pc-base/init-plugin';\nimport modalBox from 'liyu-pc-base/components/form-modal/modal-tools';\nimport { addMenu, import_menu } from 'liyu-pc-base/api/permission/menu-manage';\nimport { queryOrgList } from 'liyu-pc-base/api/sys';\nimport { getApiData } from 'liyu-pc-base/api/api-model';\nimport type { BtnListConfig, HeadBtnListConfig } from 'liyu-pc-base/api/typing';\nimport { cloneDeep } from 'lodash';\nimport { ExclamationCircleOutlined } from '@ant-design/icons-vue';\n\nconst genID = (): string => {\n const array = new Uint8Array(16); // 16 字节 = 128 位\n window.crypto.getRandomValues(array);\n return Array.from(array, byte => byte.toString(16).padStart(2, '0')).join('');\n};\nconst defaultComponentTypes = [\n {\n name: '默认',\n value: '@/components/remotePages/index.vue',\n order: 0,\n },\n {\n name: '其他',\n value: null,\n order: 10,\n },\n];\nlet _allComponentTypes = null;\n\nconst getAllComponentTypes = () => {\n if (!_allComponentTypes) {\n const res = cloneDeep(defaultComponentTypes);\n const custom_menu_components = useMenuComponents();\n for (const item of custom_menu_components) {\n res.push(item);\n }\n res.sort((a, b) => a.order - b.order);\n _allComponentTypes = res;\n }\n return _allComponentTypes;\n};\nconst getComponentTypeByValue = value => {\n const all = getAllComponentTypes();\n const res = all.find(item => {\n return item.value === value;\n });\n if (!res) {\n return all.find(item => {\n return item.value === null;\n });\n } else {\n return res;\n }\n};\nexport const btn_list: BtnListConfig = [\n {\n name: '修改',\n model_kind: 'custom_component',\n type: 'dropdown',\n clazz: 'primary',\n model_config: {\n title: '修改菜单',\n component: 'menuConfig',\n init_data: {\n form_type: 'edit',\n },\n },\n },\n {\n name: '新建子菜单',\n model_kind: 'custom_component',\n type: 'dropdown',\n clazz: 'primary',\n model_config: {\n title: '新建子菜单',\n component: 'menuConfig',\n init_data: {\n form_type: 'create_sub_menu',\n },\n },\n },\n {\n name: '修改菜单帮助',\n model_kind: 'form',\n type: 'dropdown',\n clazz: 'primary',\n show_condition: [\n [\n {\n flag: 'menu_path',\n type: 'string',\n operator: 'not_blank_not_null',\n value: ['true'],\n },\n ],\n ],\n model_config: {\n title: '修改菜单帮助',\n api_fields: {\n menu_id: 'id',\n },\n form: {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: [],\n },\n dynamicFieldList: [\n {\n children: [\n {\n type: 'upload',\n label: '文件',\n disabled: false,\n access_type: 'public',\n maxCount: 1,\n listType: 'picture',\n group: 'sys',\n span: 24,\n acceptList: ['.pdf'],\n name: 'helper_files',\n placeholder: '请选择文件上传',\n pull: 0,\n push: 0,\n offset: 0,\n queryType: 'advanced',\n },\n ],\n },\n ],\n model: {\n helper_files: [],\n },\n rules: {},\n options: {},\n },\n ok_url: '/permission/update_menu_helper',\n },\n authority: 'permission/update_menu_helper',\n },\n];\n\nexport const config = {\n creatCol: [],\n updateCol: [],\n};\nexport const head_btn_list: HeadBtnListConfig = [\n {\n name: '新建菜单',\n model_kind: 'custom_component',\n type: 'dropdown',\n clazz: 'primary',\n model_config: {\n title: '新建菜单',\n component: 'menuConfig',\n init_data: {\n form_type: 'create',\n },\n },\n },\n {\n name: '批量删除',\n clazz: 'primary',\n authority: 'permission/batch_delete_menu',\n urls: ['permission/batch_delete_menu'],\n cb: ({ selectedRowKeys }) => {\n if (!selectedRowKeys || selectedRowKeys.length <= 0) {\n notification.info({\n message: '温馨提示',\n description: '请选择要操作的数据',\n });\n return;\n }\n const userStore = useUserStore();\n const current_org = userStore.currentOrg;\n Modal.confirm({\n title: () => '是否批量删除已选中数据',\n icon: () => createVNode(ExclamationCircleOutlined),\n onOk() {\n return new Promise(resolve => {\n getApiData(\n {\n org_id: current_org.id,\n menu_id: selectedRowKeys,\n },\n '/permission/batch_delete_menu',\n )\n .then((res: any) => {\n message.success('成功删除' + res.count + '条数据');\n event_obj().emit('refresh');\n })\n .finally(() => {\n resolve(null);\n });\n }).catch(() => console.log('Oops errors!'));\n },\n onCancel() {},\n });\n },\n },\n {\n name: '批量恢复',\n clazz: 'primary',\n authority: 'permission/batch_recover_menu',\n urls: ['permission/batch_recover_menu'],\n cb: ({ selectedRowKeys }) => {\n if (!selectedRowKeys || selectedRowKeys.length <= 0) {\n notification.info({\n message: '温馨提示',\n description: '请选择要操作的数据',\n });\n return;\n }\n const userStore = useUserStore();\n const current_org = userStore.currentOrg;\n Modal.confirm({\n title: () => '是否批量恢复已选中数据',\n icon: () => createVNode(ExclamationCircleOutlined),\n onOk() {\n return new Promise(resolve => {\n getApiData(\n {\n org_id: current_org.id,\n menu_id: selectedRowKeys,\n },\n '/permission/batch_recover_menu',\n )\n .then((res: any) => {\n message.success('成功恢复' + res.count + '条数据');\n event_obj().emit('refresh');\n })\n .finally(() => {\n resolve(null);\n });\n }).catch(() => console.log('Oops errors!'));\n },\n onCancel() {},\n });\n },\n },\n {\n name: '导出菜单',\n clazz: 'primary',\n model_kind: 'custom_component',\n model_config: {\n component: 'ExportMenu',\n },\n },\n {\n name: '导入菜单',\n clazz: 'primary',\n model_kind: 'custom_component',\n model_config: {\n component: 'ImportMenu',\n },\n },\n];\n","import type { TableColumn } from 'liyu-pc-base/typing';\nimport type { Record, SearchConfig } from 'liyu-pc-base/components/remotePages/typing';\nimport { btn_list, head_btn_list } from './permission-menu-config';\nimport { event_obj } from 'liyu-pc-base/init-plugin';\nimport { reactive } from 'vue';\nimport { useEnv } from 'liyu-pc-base/init-plugin';\nimport { useUserStore } from 'liyu-pc-base/init-plugin';\n\nexport default () => {\n const env = useEnv();\n const userStore = useUserStore();\n const current_org = userStore.currentOrg; // 当前组织org\n const search_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'inline',\n },\n fields: [\n {\n name: 'is_active',\n label: '是否可用',\n disabled: false,\n allowClear: true,\n placeholder: '请选择是否可用',\n type: 'select',\n labelKey: 'name',\n },\n {\n type: 'remoteselect',\n name: 'aim_org_id',\n label: '目标组织',\n disabled: false,\n placeholder: '请选择目标组织',\n datasourceType: 'remote',\n mode: 'default',\n allowClear: true,\n labelKey: 'name',\n valueKey: 'id',\n modalType: 'sys-query_org_for_login_list',\n },\n {\n type: 'input',\n name: 'name',\n label: '菜单名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写角色名称',\n },\n {\n type: 'input',\n name: 'state',\n label: '路由',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写路由',\n },\n {\n type: 'remotetreeselectpro',\n name: 'parent_id',\n label: '父级菜单',\n label_i18n: '父级菜单',\n placeholder_i18n: '请选择父级菜单',\n disabled: false,\n allowClear: true,\n defaultValue: '',\n valueKey: 'value',\n labelKey: 'title',\n placeholder: '请选择父级菜单',\n postUrl: '/permission/query_menu_list__tree',\n init_model: {\n aim_org_id: current_org?.id,\n },\n },\n ],\n rules: {},\n model: reactive({\n org_id: current_org.id,\n aim_org_id: current_org.id,\n tree_struct_simulation: true,\n is_active: true,\n get_menu: true,\n state: null,\n parent_id: null,\n name: null,\n }),\n options: {\n is_active: [\n { name: '全部', value: '' },\n { name: '可用', value: true },\n { name: '禁用', value: false },\n ],\n },\n default_column_field: ['parent_id', 'index'],\n };\n\n const titleList = {\n title: '权限管理',\n addModalTitle: '新建角色',\n updateTitle: '修改',\n is_create: false, // 是否有【新建】按钮\n is_update: false, // 是否有【修改】按钮\n is_remove: 'permission/delete_menu', // 是否有【删除】按钮\n is_recover: 'permission/recover_menu', // 是否有【恢复】按钮\n };\n\n const api_fields: Record = {\n update: {\n menu_id: 'id',\n },\n delete: {\n menu_id: 'id',\n },\n recover: {\n menu_id: 'id',\n },\n updateData: {\n org_id: 'org_id',\n menu_id: 'id',\n },\n };\n\n const baseColumns: TableColumn[] = [\n {\n title: 'id',\n dataIndex: 'id',\n width: 80,\n checked: false,\n fixed: 'left',\n },\n {\n title: '名称',\n width: 300,\n checked: true,\n dataIndex: 'name',\n fixed: 'left',\n },\n {\n title: '索引',\n width: 60,\n checked: true,\n dataIndex: 'sort',\n },\n {\n title: '菜单图标',\n width: 100,\n dataIndex: 'icon',\n checked: true,\n resizable: true,\n cellComponent: 'icon',\n },\n {\n title: ' 菜单标识',\n dataIndex: 'state',\n checked: true,\n resizable: true,\n },\n {\n title: '菜单地址',\n dataIndex: 'menu_path',\n checked: true,\n resizable: true,\n },\n {\n title: ' 路由名称',\n dataIndex: 'menu_name',\n checked: false,\n resizable: true,\n },\n {\n title: '组件地址',\n dataIndex: 'component',\n width: 300,\n checked: false,\n resizable: true,\n },\n {\n title: '隶属组织列表',\n dataIndex: 'org_id_list',\n minWidth: 400,\n checked: false,\n cellComponent: 'json',\n resizable: true,\n },\n {\n title: '平台',\n dataIndex: 'platform',\n minWidth: 100,\n checked: true,\n cellComponent: 'tag',\n contentMap: {\n '10': 'PC',\n '11': 'PC 隐藏菜单',\n '12': 'PC 隐藏子菜单',\n '20': '手机端',\n },\n colorMap: {\n '10': 'green',\n '11': 'yellow',\n '12': 'orange',\n '20': 'red',\n },\n },\n\n {\n title: '是否菜单',\n dataIndex: 'is_menu',\n width: 80,\n checked: true,\n resizable: true,\n cellComponent: 'boolean',\n name1: '菜单',\n name2: '按钮',\n },\n {\n title: '菜单帮助',\n dataIndex: 'helper_files',\n minWidth: 100,\n checked: true,\n cellComponent: 'pdf',\n formatExcelValue: 'file',\n },\n {\n title: '状态',\n width: 100,\n dataIndex: 'is_active',\n checked: true,\n resizable: true,\n cellComponent: 'boolean',\n name1: '可用',\n name2: '禁用',\n filterMultiple: false,\n filters: [\n { text: '可用', value: 'true' },\n { text: '禁用', value: 'false' },\n ],\n },\n {\n title: '对应接口',\n dataIndex: 'url_id_list',\n width: 800,\n checked: false,\n cellComponent: 'list',\n },\n {\n title: '扩展属性',\n dataIndex: 'options',\n checked: false,\n cellComponent: 'json',\n resizable: true,\n },\n {\n title: '操作',\n width: 50,\n dataIndex: 'action',\n checked: true,\n cellComponent: 'action',\n fixed: 'right',\n },\n ];\n if (env.VITE_APP_HAS_PROJECT) {\n baseColumns.splice(5, 0, {\n title: '模块',\n dataIndex: 'menu_project__name',\n minWidth: 100,\n checked: true,\n });\n search_config.fields.push({\n type: 'remotetreeselectpro',\n name: 'menu_project',\n label: '模块',\n label_i18n: '模块',\n placeholder_i18n: '请选择模块',\n disabled: false,\n allowClear: true,\n defaultValue: '',\n valueKey: 'project',\n labelKey: 'name',\n placeholder: '请选择模块',\n postUrl: '/i18n/query_language_project_list',\n });\n }\n return {\n searchConfig: search_config,\n queryData: '/permission/query_menu_list__tree',\n baseColumns,\n titleList,\n api_fields,\n btn_list,\n head_btn_list,\n event_obj: event_obj(),\n is_show_advantage: false,\n is_show_normal_search: true,\n is_only_show_advantage: false,\n is_only_show_normal_search: true,\n isView: false,\n };\n};\n","import type { TableColumn } from 'liyu-pc-base/typing';\n\nexport default () => {\n const baseColumns: TableColumn[] = [\n {\n title: '序号',\n dataIndex: 'index',\n checked: true,\n width: 70,\n fixed: 'left',\n },\n {\n title: 'ID',\n width: 150,\n dataIndex: 'id',\n checked: false,\n ellipsis: true,\n resizable: true,\n },\n {\n title: '标题',\n width: 150,\n dataIndex: 'name',\n checked: true,\n ellipsis: true,\n resizable: true,\n },\n {\n filterMultiple: true,\n cellComponent: 'tag',\n contentMap: {\n simple: '简单匹配',\n regex: '正则匹配',\n },\n colorMap: {\n simple: 'green',\n regex: 'cyan',\n },\n filters: [\n {\n value: 'simple',\n text: '简单匹配',\n },\n {\n value: 'regex',\n text: '正则匹配',\n },\n ],\n title: '匹配类型',\n width: 150,\n dataIndex: 'match_type',\n checked: true,\n ellipsis: true,\n resizable: true,\n formatExcelValue: 'tag',\n },\n {\n title: '路径匹配',\n width: 150,\n dataIndex: 'content',\n checked: true,\n ellipsis: true,\n resizable: true,\n },\n {\n title: '文件',\n width: 150,\n dataIndex: 'files',\n checked: true,\n ellipsis: true,\n resizable: true,\n cellComponent: 'pdf',\n formatExcelValue: 'file',\n },\n {\n filterMultiple: false,\n cellComponent: 'tag',\n contentMap: {\n true: '可用',\n false: '禁用',\n },\n colorMap: {\n true: 'green',\n false: 'red',\n },\n filters: [\n {\n value: 'true',\n text: '可用',\n },\n {\n value: 'false',\n text: '禁用',\n },\n ],\n title: '是否可用',\n width: 150,\n dataIndex: 'is_active',\n checked: true,\n ellipsis: true,\n resizable: true,\n formatExcelValue: 'tag',\n },\n {\n contentFunc: '({text}) => getDateTime(text)',\n title: '创建时间',\n width: 150,\n dataIndex: 'create_time',\n checked: true,\n ellipsis: true,\n resizable: true,\n },\n {\n contentFunc: '({text}) => getDateTime(text)',\n title: '更新时间',\n width: 150,\n dataIndex: 'update_time',\n checked: true,\n ellipsis: true,\n resizable: true,\n },\n ];\n const formModalConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: [],\n },\n dynamicFieldList: [\n {\n children: [\n {\n type: 'input',\n name: 'name',\n label: '标题',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写标题',\n span: 24,\n required_condition: null,\n },\n {\n type: 'radio',\n name: 'match_type',\n label: '匹配类型',\n disabled: false,\n allowClear: true,\n labelKey: 'name',\n valueKey: 'value',\n defaultValue: '',\n placeholder: '请选择匹配类型',\n span: 24,\n required_condition: null,\n queryType: 'advanced',\n },\n {\n type: 'remotecomplete',\n label: '路径匹配',\n disabled: false,\n allowClear: true,\n valueKey: 'menu_path',\n labelKeyType: 1,\n labelKey: 'name',\n labelKeyList: [],\n labelSpace: '-',\n mode: 'default',\n placeholder: '请输入内容',\n show_search: true,\n datasourceType: 'remote',\n queryType: 'advanced',\n searchConditions: [\n [\n {\n searchType: 3,\n field_name: 'is_active',\n operator: 'eq',\n value: [true],\n format: 'choices',\n class_name: 'bool',\n },\n ],\n ],\n simpleSearchConditions: [\n {\n searchType: 3,\n field_name: 'is_active',\n value: true,\n },\n ],\n postUrl: '/permission/query_menu_list',\n name: 'content',\n span: 24,\n pull: 0,\n push: 0,\n offset: 0,\n },\n {\n type: 'upload',\n label: '文件',\n disabled: false,\n access_type: 'public',\n maxCount: 1,\n listType: 'picture',\n group: 'sys',\n span: 24,\n acceptList: ['.pdf'],\n name: 'files',\n placeholder: '请输入文件',\n pull: 0,\n push: 0,\n offset: 0,\n queryType: 'advanced',\n },\n ],\n },\n ],\n model: {\n update_field_list: ['name', 'match_type', 'content', 'files'],\n name: null,\n match_type: 'simple',\n files: [],\n },\n rules: {\n name: [\n {\n required: true,\n message: '请填输入标题',\n },\n ],\n },\n options: {\n match_type: [\n {\n name: '简单匹配',\n value: 'simple',\n valueType: 'str',\n },\n {\n name: '正则匹配',\n value: 'regex',\n valueType: 'str',\n },\n ],\n },\n };\n const updateFormModalConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: [],\n },\n dynamicFieldList: [\n {\n children: [\n {\n type: 'input',\n name: 'name',\n label: '标题',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写标题',\n span: 24,\n required_condition: null,\n },\n {\n type: 'radio',\n name: 'match_type',\n label: '匹配类型',\n disabled: false,\n allowClear: true,\n labelKey: 'name',\n valueKey: 'value',\n defaultValue: '',\n placeholder: '请选择匹配类型',\n span: 24,\n required_condition: null,\n },\n {\n type: 'remotecomplete',\n label: '路径匹配',\n disabled: false,\n allowClear: true,\n valueKey: 'menu_path',\n labelKeyType: 1,\n labelKey: 'name',\n labelKeyList: [],\n labelSpace: '-',\n mode: 'default',\n placeholder: '请输入路径匹配',\n show_search: true,\n datasourceType: 'remote',\n queryType: 'advanced',\n searchConditions: [\n [\n {\n searchType: 3,\n field_name: 'is_active',\n operator: 'eq',\n value: [true],\n format: 'choices',\n class_name: 'bool',\n },\n ],\n ],\n simpleSearchConditions: [\n {\n searchType: 3,\n field_name: 'is_active',\n value: true,\n },\n ],\n postUrl: '/permission/query_menu_list',\n name: 'content',\n span: 24,\n pull: 0,\n push: 0,\n offset: 0,\n },\n {\n type: 'upload',\n label: '文件上传',\n disabled: false,\n access_type: 'public',\n maxCount: 1,\n listType: 'picture',\n group: 'sys',\n span: 24,\n acceptList: ['.pdf'],\n name: 'files',\n placeholder: '请选择文件上传',\n pull: 0,\n push: 0,\n offset: 0,\n queryType: 'advanced',\n },\n ],\n },\n ],\n model: {\n update_field_list: ['name', 'match_type', 'content', 'files'],\n name: null,\n match_type: 'simple',\n files: [],\n },\n rules: {\n name: [\n {\n required: true,\n message: '请填输入标题',\n },\n ],\n },\n options: {\n match_type: [\n {\n name: '简单匹配',\n value: 'simple',\n valueType: 'str',\n },\n {\n name: '正则匹配',\n value: 'regex',\n valueType: 'str',\n },\n ],\n },\n };\n\n return {\n baseColumns,\n formModalConfig,\n updateFormModalConfig,\n };\n};\n","import { useRequest } from 'liyu-pc-base/init-plugin';\n\nexport async function query_person_detail_list(params?: {\n [key: string]: any;\n}): Promise<RoleResponse> {\n return useRequest().post('/sys/query_person_detail_list', params);\n}\n\nexport async function create_organization_by_role_template(params: Record<string, any>) {\n return useRequest().post('/org/create_organization_by_role_template', params);\n}\n\nexport async function removePerson(params: Record<string, any>) {\n return useRequest().post('/sys/delete_user', params);\n}\nexport async function recoverPerson(params: Record<string, any>) {\n return useRequest().post('/sys/recover_user', params);\n}\nexport async function resetPassword(params: Record<string, any>) {\n return useRequest().post('/sys/reset_password', params);\n}\nexport async function create_role_list_and_person(params: Record<string, any>) {\n return useRequest().post('/org/create_role_list_and_person', params);\n}\nexport async function query_role_id_list(params: Record<string, any>) {\n return useRequest().post('/org/query_role_id_list', params);\n}\nexport async function query_role_list(params: Record<string, any>) {\n return useRequest().post('/production_event/query_role_list', params);\n}\nexport async function create_shift_and_user(params: Record<string, any>) {\n return useRequest().post('/shift/create_shift_and_user', params);\n}\nexport async function check_shift_and_user(params: Record<string, any>) {\n return useRequest().post('/shift/check_shift_and_user', params);\n}\n\nexport async function addPerson(params: Record<string, any>) {\n return useRequest().post('/sys/create_user', params);\n // return request('/sys.create_user', {\n // method: 'POST',\n // data: {\n // ...params,\n // method: 'post',\n // },\n // });\n}\n\nexport async function updatePerson(params: Record<string, any>) {\n return useRequest().post('/sys/update_user', params);\n}\n\ninterface RuleItem {\n key: string | number;\n callNo: number;\n avatar: string;\n desc: string;\n disabled: false;\n href: string;\n name: string;\n owner: string;\n progress: number;\n status: number;\n updatedAt: string;\n createdAt: string;\n}\n\ninterface RoleResponse {\n current: number;\n data: RuleItem[];\n pageSize: string;\n success: boolean;\n total: number;\n}\n","import { reactive } from 'vue';\nimport { message } from 'ant-design-vue';\nimport modalBox from 'liyu-pc-base/components/form-modal/modal-tools';\nimport { create_organization_by_role_template } from 'liyu-pc-base/api/permission/user-manage';\nimport type { BtnListConfig, HeadBtnListConfig } from 'liyu-pc-base/api/typing';\nexport const btn_list: BtnListConfig = [];\nexport const config = {\n creatCol: [],\n updateCol: [],\n};\nexport const head_btn_list: HeadBtnListConfig = [\n {\n name: '添加账套',\n type: 'dropdown',\n is_show: true,\n clazz: 'primary',\n cb: () => {\n const editModal = reactive({\n visible: true,\n title: '新建账套',\n loading: false,\n form: {\n settings: {\n labelAlign: 'right',\n layout: 'horizontal',\n col: [],\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '账套名称',\n disabled: false,\n allowClear: true,\n inputType: 'number',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填组织名称',\n },\n\n {\n type: 'remoteselect',\n name: 'role_org_id',\n label: '权限模板',\n disabled: false,\n allowClear: true,\n labelKey: 'name',\n valueKey: 'id',\n placeholder: '请填权限模板',\n datasourceType: 'remote',\n mode: 'default',\n modalType: 'select-org-id',\n },\n ],\n rules: {\n name: [{ required: true, message: '请输入账套名称' }],\n role_org_id: [{ required: true, message: '请选择权限模板' }],\n },\n model: reactive({\n name: '',\n role_org_id: '',\n }),\n },\n options: {},\n ok: (payload: any) => {\n return new Promise(resolve => {\n editModal.loading = true;\n create_organization_by_role_template({\n ...payload,\n })\n .then(() => {\n message.success('创建新账套成功');\n resolve(null);\n })\n .finally(() => {\n editModal.loading = false;\n });\n });\n },\n });\n modalBox(editModal);\n },\n },\n];\n","import { TableColumn } from 'liyu-pc-base/typing';\nimport { Record, SearchConfig } from 'liyu-pc-base/components/remotePages/typing';\nimport { btn_list, config, head_btn_list } from './permission-organization-config';\nimport { event_obj } from 'liyu-pc-base/init-plugin';\nimport { reactive } from 'vue';\nimport { useUserStore } from 'liyu-pc-base/init-plugin';\n\nexport default () => {\n const userStore = useUserStore();\n const current_org = userStore.currentOrg; // 当前组织org\n\n const search_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'inline',\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写账套名称',\n },\n ],\n rules: {},\n model: reactive({\n org_id: current_org.id,\n aim_org_id: current_org.id,\n is_active: true,\n name: '',\n get_role: true,\n }),\n options: {},\n };\n\n const edit_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'horizontal',\n col: config.creatCol,\n },\n fields: [\n {\n type: 'remoteselect',\n name: 'aim_org_id',\n label: '隶属组织',\n disabled: false,\n allowClear: true,\n labelKey: 'name',\n valueKey: 'id',\n placeholder: '请选择隶属组织',\n datasourceType: 'remote',\n mode: 'default',\n default: true,\n modalType: 'select-org-id',\n },\n {\n type: 'input',\n name: 'username',\n label: '手机号',\n disabled: false,\n allowClear: true,\n inputType: 'number',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填手机号',\n },\n {\n type: 'input',\n name: 'realname',\n label: '姓名',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填姓名',\n },\n {\n type: 'select',\n name: 'manage_type',\n label: '用户类型',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填姓名',\n },\n {\n type: 'remoteselect',\n name: 'role_ids',\n label: '角色',\n disabled: false,\n placeholder: '请选择角色',\n datasourceType: 'remote',\n mode: 'multiple',\n allowClear: true,\n modalType: 'liyu_permission-role',\n },\n ],\n rules: {\n username: [{ required: true, pattern: /^1[123456789]\\d{9}$/, message: '请输入正确手机号' }],\n realname: [{ required: true, message: '请输入姓名' }],\n },\n model: {\n org_id: current_org?.id,\n id: null,\n username: '',\n realname: '',\n aim_org_id: current_org?.id,\n },\n options: {\n manage_type: [\n { label: '普通用户', value: 0 },\n { label: '超级管理员', value: 2 },\n ],\n },\n };\n\n const update_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'horizontal',\n col: config.creatCol,\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '账套名称',\n disabled: false,\n allowClear: true,\n inputType: 'number',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填组织名称',\n },\n ],\n rules: {},\n model: reactive({\n org_id: current_org.id,\n id: null,\n username: '',\n realname: '',\n title: '',\n aim_org_id: '',\n email: '',\n }),\n options: {},\n };\n\n const titleList = {\n title: '账套管理',\n addModalTitle: '新建账套',\n updateTitle: '修改',\n is_create: false, // 是否有【新建】按钮\n is_update: true, // 是否有【修改】按钮\n is_remove: false, // 是否有【删除】按钮\n is_recover: false, // 是否有【恢复】按钮\n };\n\n const api_fields: Record = {\n update: {\n aim_org_id: 'id',\n },\n delete: {\n person_id: 'id',\n },\n recover: {\n person_id: 'id',\n },\n updateData: {\n org_id: 'org_id',\n aim_org_id: 'id',\n },\n };\n\n const baseColumns: TableColumn[] = [\n {\n title: '序号',\n width: 50,\n dataIndex: 'index',\n checked: true,\n fixed: 'left',\n },\n {\n title: '名称',\n dataIndex: 'name',\n checked: true,\n fixed: 'left',\n },\n\n {\n title: '是否可用',\n width: 100,\n dataIndex: 'is_active',\n checked: true,\n resizable: true,\n cellComponent: 'boolean',\n name1: '可用',\n name2: '禁用',\n filterMultiple: false,\n filters: [\n { text: '全部', value: '' },\n { text: '可用', value: 'true' },\n { text: '禁用', value: 'false' },\n ],\n },\n {\n title: '操作',\n width: 50,\n checked: true,\n dataIndex: 'action',\n cellComponent: 'action',\n fixed: 'right',\n },\n ];\n\n return {\n searchConfig: search_config,\n formModalConfig: edit_model_config,\n updateFormModalConfig: update_model_config,\n queryData: '/org/query_organization_list',\n addData: '/org/create_organization',\n updateData: '/org/update_organization',\n getData: '/org/get_organization',\n removeData: null,\n recoverData: null,\n baseColumns: baseColumns,\n titleList: titleList,\n api_fields: api_fields,\n btn_list: btn_list,\n head_btn_list: head_btn_list,\n event_obj: event_obj(),\n base_search_condition_config_list: [],\n default_search_condition_config_list: [[]],\n condition_group_config_list: [],\n is_show_advantage: false,\n is_show_normal_search: true,\n is_only_show_advantage: false,\n is_only_show_normal_search: true,\n queryConditionGroupData: null,\n isView: false,\n };\n};\n","// This icon file is generated automatically.\nvar CloseOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M563.8 512l262.5-312.9c4.4-5.2.7-13.1-6.1-13.1h-79.8c-4.7 0-9.2 2.1-12.3 5.7L511.6 449.8 295.1 191.7c-3-3.6-7.5-5.7-12.3-5.7H203c-6.8 0-10.5 7.9-6.1 13.1L459.4 512 196.9 824.9A7.95 7.95 0 00203 838h79.8c4.7 0 9.2-2.1 12.3-5.7l216.5-258.1 216.5 258.1c3 3.6 7.5 5.7 12.3 5.7h79.8c6.8 0 10.5-7.9 6.1-13.1L563.8 512z\" } }] }, \"name\": \"close\", \"theme\": \"outlined\" };\nexport default CloseOutlined;\n","import { createVNode as _createVNode } from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport CloseOutlinedSvg from \"@ant-design/icons-svg/es/asn/CloseOutlined\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar CloseOutlined = function CloseOutlined(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _createVNode(AntdIcon, _objectSpread({}, p, {\n \"icon\": CloseOutlinedSvg\n }), null);\n};\n\nCloseOutlined.displayName = 'CloseOutlined';\nCloseOutlined.inheritAttrs = false;\nexport default CloseOutlined;","// This icon file is generated automatically.\nvar CheckCircleOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M699 353h-46.9c-10.2 0-19.9 4.9-25.9 13.3L469 584.3l-71.2-98.8c-6-8.3-15.6-13.3-25.9-13.3H325c-6.5 0-10.3 7.4-6.5 12.7l124.6 172.8a31.8 31.8 0 0051.7 0l210.6-292c3.9-5.3.1-12.7-6.4-12.7z\" } }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\" } }] }, \"name\": \"check-circle\", \"theme\": \"outlined\" };\nexport default CheckCircleOutlined;\n","import { createVNode as _createVNode } from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport CheckCircleOutlinedSvg from \"@ant-design/icons-svg/es/asn/CheckCircleOutlined\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar CheckCircleOutlined = function CheckCircleOutlined(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _createVNode(AntdIcon, _objectSpread({}, p, {\n \"icon\": CheckCircleOutlinedSvg\n }), null);\n};\n\nCheckCircleOutlined.displayName = 'CheckCircleOutlined';\nCheckCircleOutlined.inheritAttrs = false;\nexport default CheckCircleOutlined;","// This icon file is generated automatically.\nvar ExclamationCircleOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\" } }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M464 688a48 48 0 1096 0 48 48 0 10-96 0zm24-112h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8z\" } }] }, \"name\": \"exclamation-circle\", \"theme\": \"outlined\" };\nexport default ExclamationCircleOutlined;\n","import { createVNode as _createVNode } from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport ExclamationCircleOutlinedSvg from \"@ant-design/icons-svg/es/asn/ExclamationCircleOutlined\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar ExclamationCircleOutlined = function ExclamationCircleOutlined(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _createVNode(AntdIcon, _objectSpread({}, p, {\n \"icon\": ExclamationCircleOutlinedSvg\n }), null);\n};\n\nExclamationCircleOutlined.displayName = 'ExclamationCircleOutlined';\nExclamationCircleOutlined.inheritAttrs = false;\nexport default ExclamationCircleOutlined;","// This icon file is generated automatically.\nvar InfoCircleOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\" } }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M464 336a48 48 0 1096 0 48 48 0 10-96 0zm72 112h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V456c0-4.4-3.6-8-8-8z\" } }] }, \"name\": \"info-circle\", \"theme\": \"outlined\" };\nexport default InfoCircleOutlined;\n","import { createVNode as _createVNode } from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport InfoCircleOutlinedSvg from \"@ant-design/icons-svg/es/asn/InfoCircleOutlined\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar InfoCircleOutlined = function InfoCircleOutlined(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _createVNode(AntdIcon, _objectSpread({}, p, {\n \"icon\": InfoCircleOutlinedSvg\n }), null);\n};\n\nInfoCircleOutlined.displayName = 'InfoCircleOutlined';\nInfoCircleOutlined.inheritAttrs = false;\nexport default InfoCircleOutlined;","// This icon file is generated automatically.\nvar CloseCircleOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M685.4 354.8c0-4.4-3.6-8-8-8l-66 .3L512 465.6l-99.3-118.4-66.1-.3c-4.4 0-8 3.5-8 8 0 1.9.7 3.7 1.9 5.2l130.1 155L340.5 670a8.32 8.32 0 00-1.9 5.2c0 4.4 3.6 8 8 8l66.1-.3L512 564.4l99.3 118.4 66 .3c4.4 0 8-3.5 8-8 0-1.9-.7-3.7-1.9-5.2L553.5 515l130.1-155c1.2-1.4 1.8-3.3 1.8-5.2z\" } }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M512 65C264.6 65 64 265.6 64 513s200.6 448 448 448 448-200.6 448-448S759.4 65 512 65zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\" } }] }, \"name\": \"close-circle\", \"theme\": \"outlined\" };\nexport default CloseCircleOutlined;\n","import { createVNode as _createVNode } from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport CloseCircleOutlinedSvg from \"@ant-design/icons-svg/es/asn/CloseCircleOutlined\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar CloseCircleOutlined = function CloseCircleOutlined(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _createVNode(AntdIcon, _objectSpread({}, p, {\n \"icon\": CloseCircleOutlinedSvg\n }), null);\n};\n\nCloseCircleOutlined.displayName = 'CloseCircleOutlined';\nCloseCircleOutlined.inheritAttrs = false;\nexport default CloseCircleOutlined;","// This icon file is generated automatically.\nvar InfoCircleFilled = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm32 664c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V456c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v272zm-32-344a48.01 48.01 0 010-96 48.01 48.01 0 010 96z\" } }] }, \"name\": \"info-circle\", \"theme\": \"filled\" };\nexport default InfoCircleFilled;\n","import { createVNode as _createVNode } from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport InfoCircleFilledSvg from \"@ant-design/icons-svg/es/asn/InfoCircleFilled\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar InfoCircleFilled = function InfoCircleFilled(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _createVNode(AntdIcon, _objectSpread({}, p, {\n \"icon\": InfoCircleFilledSvg\n }), null);\n};\n\nInfoCircleFilled.displayName = 'InfoCircleFilled';\nInfoCircleFilled.inheritAttrs = false;\nexport default InfoCircleFilled;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport defaultLocale from '../locale/en_US';\nlet runtimeLocale = _extends({}, defaultLocale.Modal);\nexport function changeConfirmLocale(newLocale) {\n if (newLocale) {\n runtimeLocale = _extends(_extends({}, runtimeLocale), newLocale);\n } else {\n runtimeLocale = _extends({}, defaultLocale.Modal);\n }\n}\nexport function getConfirmLocale() {\n return runtimeLocale;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { provide, defineComponent, reactive, watch } from 'vue';\nimport { changeConfirmLocale } from '../modal/locale';\nimport warning from '../_util/warning';\nimport { withInstall } from '../_util/type';\nexport const ANT_MARK = 'internalMark';\nconst LocaleProvider = defineComponent({\n compatConfig: {\n MODE: 3\n },\n name: 'ALocaleProvider',\n props: {\n locale: {\n type: Object\n },\n ANT_MARK__: String\n },\n setup(props, _ref) {\n let {\n slots\n } = _ref;\n warning(props.ANT_MARK__ === ANT_MARK, 'LocaleProvider', '`LocaleProvider` is deprecated. Please use `locale` with `ConfigProvider` instead');\n const state = reactive({\n antLocale: _extends(_extends({}, props.locale), {\n exist: true\n }),\n ANT_MARK__: ANT_MARK\n });\n provide('localeData', state);\n watch(() => props.locale, locale => {\n changeConfirmLocale(locale && locale.Modal);\n state.antLocale = _extends(_extends({}, locale), {\n exist: true\n });\n }, {\n immediate: true\n });\n return () => {\n var _a;\n return (_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots);\n };\n }\n});\n/* istanbul ignore next */\nLocaleProvider.install = function (app) {\n app.component(LocaleProvider.name, LocaleProvider);\n return app;\n};\nexport default withInstall(LocaleProvider);","import locale from '../locale';\nexport * from '../locale';\nexport default locale;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport { resolveDirective as _resolveDirective, createVNode as _createVNode } from \"vue\";\nimport { Teleport, computed, defineComponent, onMounted, watch, onUnmounted } from 'vue';\nimport classNames from '../_util/classNames';\nexport default defineComponent({\n name: 'Notice',\n inheritAttrs: false,\n props: ['prefixCls', 'duration', 'updateMark', 'noticeKey', 'closeIcon', 'closable', 'props', 'onClick', 'onClose', 'holder', 'visible'],\n setup(props, _ref) {\n let {\n attrs,\n slots\n } = _ref;\n let closeTimer;\n let isUnMounted = false;\n const duration = computed(() => props.duration === undefined ? 4.5 : props.duration);\n const startCloseTimer = () => {\n if (duration.value && !isUnMounted) {\n closeTimer = setTimeout(() => {\n close();\n }, duration.value * 1000);\n }\n };\n const clearCloseTimer = () => {\n if (closeTimer) {\n clearTimeout(closeTimer);\n closeTimer = null;\n }\n };\n const close = e => {\n if (e) {\n e.stopPropagation();\n }\n clearCloseTimer();\n const {\n onClose,\n noticeKey\n } = props;\n if (onClose) {\n onClose(noticeKey);\n }\n };\n const restartCloseTimer = () => {\n clearCloseTimer();\n startCloseTimer();\n };\n onMounted(() => {\n startCloseTimer();\n });\n onUnmounted(() => {\n isUnMounted = true;\n clearCloseTimer();\n });\n watch([duration, () => props.updateMark, () => props.visible], (_ref2, _ref3) => {\n let [preDuration, preUpdateMark, preVisible] = _ref2;\n let [newDuration, newUpdateMark, newVisible] = _ref3;\n if (preDuration !== newDuration || preUpdateMark !== newUpdateMark || preVisible !== newVisible && newVisible) {\n restartCloseTimer();\n }\n }, {\n flush: 'post'\n });\n return () => {\n var _a, _b;\n const {\n prefixCls,\n closable,\n closeIcon = (_a = slots.closeIcon) === null || _a === void 0 ? void 0 : _a.call(slots),\n onClick,\n holder\n } = props;\n const {\n class: className,\n style\n } = attrs;\n const componentClass = `${prefixCls}-notice`;\n const dataOrAriaAttributeProps = Object.keys(attrs).reduce((acc, key) => {\n if (key.startsWith('data-') || key.startsWith('aria-') || key === 'role') {\n acc[key] = attrs[key];\n }\n return acc;\n }, {});\n const node = _createVNode(\"div\", _objectSpread({\n \"class\": classNames(componentClass, className, {\n [`${componentClass}-closable`]: closable\n }),\n \"style\": style,\n \"onMouseenter\": clearCloseTimer,\n \"onMouseleave\": startCloseTimer,\n \"onClick\": onClick\n }, dataOrAriaAttributeProps), [_createVNode(\"div\", {\n \"class\": `${componentClass}-content`\n }, [(_b = slots.default) === null || _b === void 0 ? void 0 : _b.call(slots)]), closable ? _createVNode(\"a\", {\n \"tabindex\": 0,\n \"onClick\": close,\n \"class\": `${componentClass}-close`\n }, [closeIcon || _createVNode(\"span\", {\n \"class\": `${componentClass}-close-x`\n }, null)]) : null]);\n if (holder) {\n return _createVNode(Teleport, {\n \"to\": holder\n }, {\n default: () => node\n });\n }\n return node;\n };\n }\n});","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { createVNode as _createVNode } from \"vue\";\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { getTransitionGroupProps } from '../_util/transition';\nimport { toRaw, shallowRef, createVNode, computed, defineComponent, ref, TransitionGroup, onMounted, render as vueRender } from 'vue';\nimport Notice from './Notice';\nimport ConfigProvider, { globalConfigForApi } from '../config-provider';\nimport classNames from '../_util/classNames';\nlet seed = 0;\nconst now = Date.now();\nfunction getUuid() {\n const id = seed;\n seed += 1;\n return `rcNotification_${now}_${id}`;\n}\nconst Notification = defineComponent({\n name: 'Notification',\n inheritAttrs: false,\n props: ['prefixCls', 'transitionName', 'animation', 'maxCount', 'closeIcon', 'hashId'],\n setup(props, _ref) {\n let {\n attrs,\n expose,\n slots\n } = _ref;\n const hookRefs = new Map();\n const notices = ref([]);\n const transitionProps = computed(() => {\n const {\n prefixCls,\n animation = 'fade'\n } = props;\n let name = props.transitionName;\n if (!name && animation) {\n name = `${prefixCls}-${animation}`;\n }\n return getTransitionGroupProps(name);\n });\n const add = (originNotice, holderCallback) => {\n const key = originNotice.key || getUuid();\n const notice = _extends(_extends({}, originNotice), {\n key\n });\n const {\n maxCount\n } = props;\n const noticeIndex = notices.value.map(v => v.notice.key).indexOf(key);\n const updatedNotices = notices.value.concat();\n if (noticeIndex !== -1) {\n updatedNotices.splice(noticeIndex, 1, {\n notice,\n holderCallback\n });\n } else {\n if (maxCount && notices.value.length >= maxCount) {\n // XXX, use key of first item to update new added (let React to move exsiting\n // instead of remove and mount). Same key was used before for both a) external\n // manual control and b) internal react 'key' prop , which is not that good.\n // eslint-disable-next-line no-param-reassign\n // zombieJ: Not know why use `updateKey`. This makes Notice infinite loop in jest.\n // Change to `updateMark` for compare instead.\n // https://github.com/react-component/notification/commit/32299e6be396f94040bfa82517eea940db947ece\n notice.key = updatedNotices[0].notice.key;\n notice.updateMark = getUuid();\n // zombieJ: That's why. User may close by key directly.\n // We need record this but not re-render to avoid upper issue\n // https://github.com/react-component/notification/issues/129\n notice.userPassKey = key;\n updatedNotices.shift();\n }\n updatedNotices.push({\n notice,\n holderCallback\n });\n }\n notices.value = updatedNotices;\n };\n const remove = removeKey => {\n notices.value = toRaw(notices.value).filter(_ref2 => {\n let {\n notice: {\n key,\n userPassKey\n }\n } = _ref2;\n const mergedKey = userPassKey || key;\n return mergedKey !== removeKey;\n });\n };\n expose({\n add,\n remove,\n notices\n });\n return () => {\n var _a;\n const {\n prefixCls,\n closeIcon = (_a = slots.closeIcon) === null || _a === void 0 ? void 0 : _a.call(slots, {\n prefixCls\n })\n } = props;\n const noticeNodes = notices.value.map((_ref3, index) => {\n let {\n notice,\n holderCallback\n } = _ref3;\n const updateMark = index === notices.value.length - 1 ? notice.updateMark : undefined;\n const {\n key,\n userPassKey\n } = notice;\n const {\n content\n } = notice;\n const noticeProps = _extends(_extends(_extends({\n prefixCls,\n closeIcon: typeof closeIcon === 'function' ? closeIcon({\n prefixCls\n }) : closeIcon\n }, notice), notice.props), {\n key,\n noticeKey: userPassKey || key,\n updateMark,\n onClose: noticeKey => {\n var _a;\n remove(noticeKey);\n (_a = notice.onClose) === null || _a === void 0 ? void 0 : _a.call(notice);\n },\n onClick: notice.onClick\n });\n if (holderCallback) {\n return _createVNode(\"div\", {\n \"key\": key,\n \"class\": `${prefixCls}-hook-holder`,\n \"ref\": div => {\n if (typeof key === 'undefined') {\n return;\n }\n if (div) {\n hookRefs.set(key, div);\n holderCallback(div, noticeProps);\n } else {\n hookRefs.delete(key);\n }\n }\n }, null);\n }\n return _createVNode(Notice, _objectSpread(_objectSpread({}, noticeProps), {}, {\n \"class\": classNames(noticeProps.class, props.hashId)\n }), {\n default: () => [typeof content === 'function' ? content({\n prefixCls\n }) : content]\n });\n });\n const className = {\n [prefixCls]: 1,\n [attrs.class]: !!attrs.class,\n [props.hashId]: true\n };\n return _createVNode(\"div\", {\n \"class\": className,\n \"style\": attrs.style || {\n top: '65px',\n left: '50%'\n }\n }, [_createVNode(TransitionGroup, _objectSpread({\n \"tag\": \"div\"\n }, transitionProps.value), {\n default: () => [noticeNodes]\n })]);\n };\n }\n});\nNotification.newInstance = function newNotificationInstance(properties, callback) {\n const _a = properties || {},\n {\n name = 'notification',\n getContainer,\n appContext,\n prefixCls: customizePrefixCls,\n rootPrefixCls: customRootPrefixCls,\n transitionName: customTransitionName,\n hasTransitionName,\n useStyle\n } = _a,\n props = __rest(_a, [\"name\", \"getContainer\", \"appContext\", \"prefixCls\", \"rootPrefixCls\", \"transitionName\", \"hasTransitionName\", \"useStyle\"]);\n const div = document.createElement('div');\n if (getContainer) {\n const root = getContainer();\n root.appendChild(div);\n } else {\n document.body.appendChild(div);\n }\n const Wrapper = defineComponent({\n compatConfig: {\n MODE: 3\n },\n name: 'NotificationWrapper',\n setup(_props, _ref4) {\n let {\n attrs\n } = _ref4;\n const notiRef = shallowRef();\n const prefixCls = computed(() => globalConfigForApi.getPrefixCls(name, customizePrefixCls));\n const [, hashId] = useStyle(prefixCls);\n onMounted(() => {\n callback({\n notice(noticeProps) {\n var _a;\n (_a = notiRef.value) === null || _a === void 0 ? void 0 : _a.add(noticeProps);\n },\n removeNotice(key) {\n var _a;\n (_a = notiRef.value) === null || _a === void 0 ? void 0 : _a.remove(key);\n },\n destroy() {\n vueRender(null, div);\n if (div.parentNode) {\n div.parentNode.removeChild(div);\n }\n },\n component: notiRef\n });\n });\n return () => {\n const global = globalConfigForApi;\n const rootPrefixCls = global.getRootPrefixCls(customRootPrefixCls, prefixCls.value);\n const transitionName = hasTransitionName ? customTransitionName : `${prefixCls.value}-${customTransitionName}`;\n return _createVNode(ConfigProvider, _objectSpread(_objectSpread({}, global), {}, {\n \"prefixCls\": rootPrefixCls\n }), {\n default: () => [_createVNode(Notification, _objectSpread(_objectSpread({\n \"ref\": notiRef\n }, attrs), {}, {\n \"prefixCls\": prefixCls.value,\n \"transitionName\": transitionName,\n \"hashId\": hashId.value\n }), null)]\n });\n };\n }\n });\n const vm = createVNode(Wrapper, props);\n vm.appContext = appContext || vm.appContext;\n vueRender(vm, div);\n};\nexport default Notification;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { createVNode as _createVNode } from \"vue\";\nimport { watch, computed, defineComponent, ref, TransitionGroup } from 'vue';\nimport Notice from './Notice';\nimport { getTransitionGroupProps } from '../_util/transition';\nimport classNames from '../_util/classNames';\nimport Portal from '../_util/Portal';\nlet seed = 0;\nconst now = Date.now();\nexport function getUuid() {\n const id = seed;\n seed += 1;\n return `rcNotification_${now}_${id}`;\n}\nconst Notification = defineComponent({\n name: 'HookNotification',\n inheritAttrs: false,\n props: ['prefixCls', 'transitionName', 'animation', 'maxCount', 'closeIcon', 'hashId', 'remove', 'notices', 'getStyles', 'getClassName', 'onAllRemoved', 'getContainer'],\n setup(props, _ref) {\n let {\n attrs,\n slots\n } = _ref;\n const hookRefs = new Map();\n const notices = computed(() => props.notices);\n const transitionProps = computed(() => {\n let name = props.transitionName;\n if (!name && props.animation) {\n switch (typeof props.animation) {\n case 'string':\n name = props.animation;\n break;\n case 'function':\n name = props.animation().name;\n break;\n case 'object':\n name = props.animation.name;\n break;\n default:\n name = `${props.prefixCls}-fade`;\n break;\n }\n }\n return getTransitionGroupProps(name);\n });\n const remove = key => props.remove(key);\n const placements = ref({});\n watch(notices, () => {\n const nextPlacements = {};\n // init placements with animation\n Object.keys(placements.value).forEach(placement => {\n nextPlacements[placement] = [];\n });\n props.notices.forEach(config => {\n const {\n placement = 'topRight'\n } = config.notice;\n if (placement) {\n nextPlacements[placement] = nextPlacements[placement] || [];\n nextPlacements[placement].push(config);\n }\n });\n placements.value = nextPlacements;\n });\n const placementList = computed(() => Object.keys(placements.value));\n return () => {\n var _a;\n const {\n prefixCls,\n closeIcon = (_a = slots.closeIcon) === null || _a === void 0 ? void 0 : _a.call(slots, {\n prefixCls\n })\n } = props;\n const noticeNodes = placementList.value.map(placement => {\n var _a, _b;\n const noticesForPlacement = placements.value[placement];\n const classes = (_a = props.getClassName) === null || _a === void 0 ? void 0 : _a.call(props, placement);\n const styles = (_b = props.getStyles) === null || _b === void 0 ? void 0 : _b.call(props, placement);\n const noticeNodesForPlacement = noticesForPlacement.map((_ref2, index) => {\n let {\n notice,\n holderCallback\n } = _ref2;\n const updateMark = index === notices.value.length - 1 ? notice.updateMark : undefined;\n const {\n key,\n userPassKey\n } = notice;\n const {\n content\n } = notice;\n const noticeProps = _extends(_extends(_extends({\n prefixCls,\n closeIcon: typeof closeIcon === 'function' ? closeIcon({\n prefixCls\n }) : closeIcon\n }, notice), notice.props), {\n key,\n noticeKey: userPassKey || key,\n updateMark,\n onClose: noticeKey => {\n var _a;\n remove(noticeKey);\n (_a = notice.onClose) === null || _a === void 0 ? void 0 : _a.call(notice);\n },\n onClick: notice.onClick\n });\n if (holderCallback) {\n return _createVNode(\"div\", {\n \"key\": key,\n \"class\": `${prefixCls}-hook-holder`,\n \"ref\": div => {\n if (typeof key === 'undefined') {\n return;\n }\n if (div) {\n hookRefs.set(key, div);\n holderCallback(div, noticeProps);\n } else {\n hookRefs.delete(key);\n }\n }\n }, null);\n }\n return _createVNode(Notice, _objectSpread(_objectSpread({}, noticeProps), {}, {\n \"class\": classNames(noticeProps.class, props.hashId)\n }), {\n default: () => [typeof content === 'function' ? content({\n prefixCls\n }) : content]\n });\n });\n const className = {\n [prefixCls]: 1,\n [`${prefixCls}-${placement}`]: 1,\n [attrs.class]: !!attrs.class,\n [props.hashId]: true,\n [classes]: !!classes\n };\n function onAfterLeave() {\n var _a;\n if (noticesForPlacement.length > 0) {\n return;\n }\n Reflect.deleteProperty(placements.value, placement);\n (_a = props.onAllRemoved) === null || _a === void 0 ? void 0 : _a.call(props);\n }\n return _createVNode(\"div\", {\n \"key\": placement,\n \"class\": className,\n \"style\": attrs.style || styles || {\n top: '65px',\n left: '50%'\n }\n }, [_createVNode(TransitionGroup, _objectSpread(_objectSpread({\n \"tag\": \"div\"\n }, transitionProps.value), {}, {\n \"onAfterLeave\": onAfterLeave\n }), {\n default: () => [noticeNodesForPlacement]\n })]);\n });\n return _createVNode(Portal, {\n \"getContainer\": props.getContainer\n }, {\n default: () => [noticeNodes]\n });\n };\n }\n});\nexport default Notification;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { createVNode as _createVNode } from \"vue\";\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { shallowRef, watch } from 'vue';\nimport HookNotification, { getUuid } from './HookNotification';\nconst defaultGetContainer = () => document.body;\nlet uniqueKey = 0;\nfunction mergeConfig() {\n const clone = {};\n for (var _len = arguments.length, objList = new Array(_len), _key = 0; _key < _len; _key++) {\n objList[_key] = arguments[_key];\n }\n objList.forEach(obj => {\n if (obj) {\n Object.keys(obj).forEach(key => {\n const val = obj[key];\n if (val !== undefined) {\n clone[key] = val;\n }\n });\n }\n });\n return clone;\n}\nexport default function useNotification() {\n let rootConfig = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n const {\n getContainer = defaultGetContainer,\n motion,\n prefixCls,\n maxCount,\n getClassName,\n getStyles,\n onAllRemoved\n } = rootConfig,\n shareConfig = __rest(rootConfig, [\"getContainer\", \"motion\", \"prefixCls\", \"maxCount\", \"getClassName\", \"getStyles\", \"onAllRemoved\"]);\n const notices = shallowRef([]);\n const notificationsRef = shallowRef();\n const add = (originNotice, holderCallback) => {\n const key = originNotice.key || getUuid();\n const notice = _extends(_extends({}, originNotice), {\n key\n });\n const noticeIndex = notices.value.map(v => v.notice.key).indexOf(key);\n const updatedNotices = notices.value.concat();\n if (noticeIndex !== -1) {\n updatedNotices.splice(noticeIndex, 1, {\n notice,\n holderCallback\n });\n } else {\n if (maxCount && notices.value.length >= maxCount) {\n notice.key = updatedNotices[0].notice.key;\n notice.updateMark = getUuid();\n notice.userPassKey = key;\n updatedNotices.shift();\n }\n updatedNotices.push({\n notice,\n holderCallback\n });\n }\n notices.value = updatedNotices;\n };\n const removeNotice = removeKey => {\n notices.value = notices.value.filter(_ref => {\n let {\n notice: {\n key,\n userPassKey\n }\n } = _ref;\n const mergedKey = userPassKey || key;\n return mergedKey !== removeKey;\n });\n };\n const destroy = () => {\n notices.value = [];\n };\n const contextHolder = () => _createVNode(HookNotification, {\n \"ref\": notificationsRef,\n \"prefixCls\": prefixCls,\n \"maxCount\": maxCount,\n \"notices\": notices.value,\n \"remove\": removeNotice,\n \"getClassName\": getClassName,\n \"getStyles\": getStyles,\n \"animation\": motion,\n \"hashId\": rootConfig.hashId,\n \"onAllRemoved\": onAllRemoved,\n \"getContainer\": getContainer\n }, null);\n const taskQueue = shallowRef([]);\n // ========================= Refs =========================\n const api = {\n open: config => {\n const mergedConfig = mergeConfig(shareConfig, config);\n //@ts-ignore\n if (mergedConfig.key === null || mergedConfig.key === undefined) {\n //@ts-ignore\n mergedConfig.key = `vc-notification-${uniqueKey}`;\n uniqueKey += 1;\n }\n taskQueue.value = [...taskQueue.value, {\n type: 'open',\n config: mergedConfig\n }];\n },\n close: key => {\n taskQueue.value = [...taskQueue.value, {\n type: 'close',\n key\n }];\n },\n destroy: () => {\n taskQueue.value = [...taskQueue.value, {\n type: 'destroy'\n }];\n }\n };\n // ======================== Effect ========================\n watch(taskQueue, () => {\n // Flush task when node ready\n if (taskQueue.value.length) {\n taskQueue.value.forEach(task => {\n switch (task.type) {\n case 'open':\n // @ts-ignore\n add(task.config);\n break;\n case 'close':\n removeNotice(task.key);\n break;\n case 'destroy':\n destroy();\n break;\n }\n });\n taskQueue.value = [];\n }\n });\n // ======================== Return ========================\n return [api, contextHolder];\n}","import Notification from './Notification';\nimport useNotification from './useNotification';\nexport { useNotification };\nexport default Notification;","import _extends from \"@babel/runtime/helpers/esm/extends\";\n// deps-lint-skip-all\nimport { Keyframes } from '../../_util/cssinjs';\nimport { genComponentStyleHook, mergeToken } from '../../theme/internal';\nimport { resetComponent } from '../../style';\nconst genMessageStyle = token => {\n const {\n componentCls,\n iconCls,\n boxShadowSecondary,\n colorBgElevated,\n colorSuccess,\n colorError,\n colorWarning,\n colorInfo,\n fontSizeLG,\n motionEaseInOutCirc,\n motionDurationSlow,\n marginXS,\n paddingXS,\n borderRadiusLG,\n zIndexPopup,\n // Custom token\n messageNoticeContentPadding\n } = token;\n const messageMoveIn = new Keyframes('MessageMoveIn', {\n '0%': {\n padding: 0,\n transform: 'translateY(-100%)',\n opacity: 0\n },\n '100%': {\n padding: paddingXS,\n transform: 'translateY(0)',\n opacity: 1\n }\n });\n const messageMoveOut = new Keyframes('MessageMoveOut', {\n '0%': {\n maxHeight: token.height,\n padding: paddingXS,\n opacity: 1\n },\n '100%': {\n maxHeight: 0,\n padding: 0,\n opacity: 0\n }\n });\n return [\n // ============================ Holder ============================\n {\n [componentCls]: _extends(_extends({}, resetComponent(token)), {\n position: 'fixed',\n top: marginXS,\n left: '50%',\n transform: 'translateX(-50%)',\n width: '100%',\n pointerEvents: 'none',\n zIndex: zIndexPopup,\n [`${componentCls}-move-up`]: {\n animationFillMode: 'forwards'\n },\n [`\n ${componentCls}-move-up-appear,\n ${componentCls}-move-up-enter\n `]: {\n animationName: messageMoveIn,\n animationDuration: motionDurationSlow,\n animationPlayState: 'paused',\n animationTimingFunction: motionEaseInOutCirc\n },\n [`\n ${componentCls}-move-up-appear${componentCls}-move-up-appear-active,\n ${componentCls}-move-up-enter${componentCls}-move-up-enter-active\n `]: {\n animationPlayState: 'running'\n },\n [`${componentCls}-move-up-leave`]: {\n animationName: messageMoveOut,\n animationDuration: motionDurationSlow,\n animationPlayState: 'paused',\n animationTimingFunction: motionEaseInOutCirc\n },\n [`${componentCls}-move-up-leave${componentCls}-move-up-leave-active`]: {\n animationPlayState: 'running'\n },\n '&-rtl': {\n direction: 'rtl',\n span: {\n direction: 'rtl'\n }\n }\n })\n },\n // ============================ Notice ============================\n {\n [`${componentCls}-notice`]: {\n padding: paddingXS,\n textAlign: 'center',\n [iconCls]: {\n verticalAlign: 'text-bottom',\n marginInlineEnd: marginXS,\n fontSize: fontSizeLG\n },\n [`${componentCls}-notice-content`]: {\n display: 'inline-block',\n padding: messageNoticeContentPadding,\n background: colorBgElevated,\n borderRadius: borderRadiusLG,\n boxShadow: boxShadowSecondary,\n pointerEvents: 'all'\n },\n [`${componentCls}-success ${iconCls}`]: {\n color: colorSuccess\n },\n [`${componentCls}-error ${iconCls}`]: {\n color: colorError\n },\n [`${componentCls}-warning ${iconCls}`]: {\n color: colorWarning\n },\n [`\n ${componentCls}-info ${iconCls},\n ${componentCls}-loading ${iconCls}`]: {\n color: colorInfo\n }\n }\n },\n // ============================= Pure =============================\n {\n [`${componentCls}-notice-pure-panel`]: {\n padding: 0,\n textAlign: 'start'\n }\n }];\n};\n// ============================== Export ==============================\nexport default genComponentStyleHook('Message', token => {\n // Gen-style functions here\n const combinedToken = mergeToken(token, {\n messageNoticeContentPadding: `${(token.controlHeightLG - token.fontSize * token.lineHeight) / 2}px ${token.paddingSM}px`\n });\n return [genMessageStyle(combinedToken)];\n}, token => ({\n height: 150,\n zIndexPopup: token.zIndexPopupBase + 10\n}));","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport { createVNode as _createVNode } from \"vue\";\nimport Notice from '../vc-notification/Notice';\nimport useStyle from './style';\nimport LoadingOutlined from \"@ant-design/icons-vue/es/icons/LoadingOutlined\";\nimport ExclamationCircleFilled from \"@ant-design/icons-vue/es/icons/ExclamationCircleFilled\";\nimport CloseCircleFilled from \"@ant-design/icons-vue/es/icons/CloseCircleFilled\";\nimport CheckCircleFilled from \"@ant-design/icons-vue/es/icons/CheckCircleFilled\";\nimport InfoCircleFilled from \"@ant-design/icons-vue/es/icons/InfoCircleFilled\";\nimport classNames from '../_util/classNames';\nimport { useConfigContextInject } from '../config-provider/context';\nimport { computed, defineComponent } from 'vue';\nexport const TypeIcon = {\n info: _createVNode(InfoCircleFilled, null, null),\n success: _createVNode(CheckCircleFilled, null, null),\n error: _createVNode(CloseCircleFilled, null, null),\n warning: _createVNode(ExclamationCircleFilled, null, null),\n loading: _createVNode(LoadingOutlined, null, null)\n};\nexport const PureContent = defineComponent({\n name: 'PureContent',\n inheritAttrs: false,\n props: ['prefixCls', 'type', 'icon'],\n setup(props, _ref) {\n let {\n slots\n } = _ref;\n return () => {\n var _a;\n return _createVNode(\"div\", {\n \"class\": classNames(`${props.prefixCls}-custom-content`, `${props.prefixCls}-${props.type}`)\n }, [props.icon || TypeIcon[props.type], _createVNode(\"span\", null, [(_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots)])]);\n };\n }\n});\n/** @private Internal Component. Do not use in your production. */\nexport default defineComponent({\n name: 'PurePanel',\n inheritAttrs: false,\n props: ['prefixCls', 'class', 'type', 'icon', 'content'],\n setup(props, _ref2) {\n let {\n slots,\n attrs\n } = _ref2;\n var _a;\n const {\n getPrefixCls\n } = useConfigContextInject();\n const prefixCls = computed(() => props.prefixCls || getPrefixCls('message'));\n const [, hashId] = useStyle(prefixCls);\n return _createVNode(Notice, _objectSpread(_objectSpread({}, attrs), {}, {\n \"prefixCls\": prefixCls.value,\n \"class\": classNames(hashId.value, `${prefixCls.value}-notice-pure-panel`),\n \"noticeKey\": \"pure\",\n \"duration\": null\n }), {\n default: () => [_createVNode(PureContent, {\n \"prefixCls\": prefixCls.value,\n \"type\": props.type,\n \"icon\": props.icon\n }, {\n default: () => [(_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots)]\n })]\n });\n }\n});","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { createVNode as _createVNode } from \"vue\";\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { shallowRef, computed, defineComponent } from 'vue';\nimport { useNotification as useVcNotification } from '../vc-notification';\nimport CloseOutlined from \"@ant-design/icons-vue/es/icons/CloseOutlined\";\nimport useStyle from './style';\nimport { PureContent } from './PurePanel';\nimport { getMotion } from '../vc-trigger/utils/motionUtil';\nimport { wrapPromiseFn } from '../_util/util';\nimport useConfigInject from '../config-provider/hooks/useConfigInject';\nimport classNames from '../_util/classNames';\nconst DEFAULT_OFFSET = 8;\nconst DEFAULT_DURATION = 3;\nconst Holder = defineComponent({\n name: 'Holder',\n inheritAttrs: false,\n props: ['top', 'prefixCls', 'getContainer', 'maxCount', 'duration', 'rtl', 'transitionName', 'onAllRemoved', 'animation', 'staticGetContainer'],\n setup(props, _ref) {\n let {\n expose\n } = _ref;\n var _a, _b;\n const {\n getPrefixCls,\n getPopupContainer\n } = useConfigInject('message', props);\n const prefixCls = computed(() => getPrefixCls('message', props.prefixCls));\n const [, hashId] = useStyle(prefixCls);\n // =============================== Style ===============================\n const getStyles = () => {\n var _a;\n const top = (_a = props.top) !== null && _a !== void 0 ? _a : DEFAULT_OFFSET;\n return {\n left: '50%',\n transform: 'translateX(-50%)',\n top: typeof top === 'number' ? `${top}px` : top\n };\n };\n const getClassName = () => classNames(hashId.value, props.rtl ? `${prefixCls.value}-rtl` : '');\n // ============================== Motion ===============================\n const getNotificationMotion = () => {\n var _a;\n return getMotion({\n prefixCls: prefixCls.value,\n animation: (_a = props.animation) !== null && _a !== void 0 ? _a : `move-up`,\n transitionName: props.transitionName\n });\n };\n // ============================ Close Icon =============================\n const mergedCloseIcon = _createVNode(\"span\", {\n \"class\": `${prefixCls.value}-close-x`\n }, [_createVNode(CloseOutlined, {\n \"class\": `${prefixCls.value}-close-icon`\n }, null)]);\n // ============================== Origin ===============================\n const [api, holder] = useVcNotification({\n //@ts-ignore\n getStyles,\n prefixCls: prefixCls.value,\n getClassName,\n motion: getNotificationMotion,\n closable: false,\n closeIcon: mergedCloseIcon,\n duration: (_a = props.duration) !== null && _a !== void 0 ? _a : DEFAULT_DURATION,\n getContainer: (_b = props.staticGetContainer) !== null && _b !== void 0 ? _b : getPopupContainer.value,\n maxCount: props.maxCount,\n onAllRemoved: props.onAllRemoved\n });\n // ================================ Ref ================================\n expose(_extends(_extends({}, api), {\n prefixCls,\n hashId\n }));\n return holder;\n }\n});\n// ==============================================================================\n// == Hook ==\n// ==============================================================================\nlet keyIndex = 0;\nexport function useInternalMessage(messageConfig) {\n const holderRef = shallowRef(null);\n const holderKey = Symbol('messageHolderKey');\n // ================================ API ================================\n // Wrap with notification content\n // >>> close\n const close = key => {\n var _a;\n (_a = holderRef.value) === null || _a === void 0 ? void 0 : _a.close(key);\n };\n // >>> Open\n const open = config => {\n if (!holderRef.value) {\n const fakeResult = () => {};\n fakeResult.then = () => {};\n return fakeResult;\n }\n const {\n open: originOpen,\n prefixCls,\n hashId\n } = holderRef.value;\n const noticePrefixCls = `${prefixCls}-notice`;\n const {\n content,\n icon,\n type,\n key,\n class: className,\n onClose\n } = config,\n restConfig = __rest(config, [\"content\", \"icon\", \"type\", \"key\", \"class\", \"onClose\"]);\n let mergedKey = key;\n if (mergedKey === undefined || mergedKey === null) {\n keyIndex += 1;\n mergedKey = `antd-message-${keyIndex}`;\n }\n return wrapPromiseFn(resolve => {\n originOpen(_extends(_extends({}, restConfig), {\n key: mergedKey,\n content: () => _createVNode(PureContent, {\n \"prefixCls\": prefixCls,\n \"type\": type,\n \"icon\": typeof icon === 'function' ? icon() : icon\n }, {\n default: () => [typeof content === 'function' ? content() : content]\n }),\n placement: 'top',\n // @ts-ignore\n class: classNames(type && `${noticePrefixCls}-${type}`, hashId, className),\n onClose: () => {\n onClose === null || onClose === void 0 ? void 0 : onClose();\n resolve();\n }\n }));\n // Return close function\n return () => {\n close(mergedKey);\n };\n });\n };\n // >>> destroy\n const destroy = key => {\n var _a;\n if (key !== undefined) {\n close(key);\n } else {\n (_a = holderRef.value) === null || _a === void 0 ? void 0 : _a.destroy();\n }\n };\n const wrapAPI = {\n open,\n destroy\n };\n const keys = ['info', 'success', 'warning', 'error', 'loading'];\n keys.forEach(type => {\n const typeOpen = (jointContent, duration, onClose) => {\n let config;\n if (jointContent && typeof jointContent === 'object' && 'content' in jointContent) {\n config = jointContent;\n } else {\n config = {\n content: jointContent\n };\n }\n // Params\n let mergedDuration;\n let mergedOnClose;\n if (typeof duration === 'function') {\n mergedOnClose = duration;\n } else {\n mergedDuration = duration;\n mergedOnClose = onClose;\n }\n const mergedConfig = _extends(_extends({\n onClose: mergedOnClose,\n duration: mergedDuration\n }, config), {\n type\n });\n return open(mergedConfig);\n };\n wrapAPI[type] = typeOpen;\n });\n // ============================== Return ===============================\n return [wrapAPI, () => _createVNode(Holder, _objectSpread(_objectSpread({\n \"key\": holderKey\n }, messageConfig), {}, {\n \"ref\": holderRef\n }), null)];\n}\nexport default function useMessage(messageConfig) {\n return useInternalMessage(messageConfig);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { createVNode as _createVNode } from \"vue\";\nimport Notification from '../vc-notification';\nimport LoadingOutlined from \"@ant-design/icons-vue/es/icons/LoadingOutlined\";\nimport ExclamationCircleFilled from \"@ant-design/icons-vue/es/icons/ExclamationCircleFilled\";\nimport CloseCircleFilled from \"@ant-design/icons-vue/es/icons/CloseCircleFilled\";\nimport CheckCircleFilled from \"@ant-design/icons-vue/es/icons/CheckCircleFilled\";\nimport InfoCircleFilled from \"@ant-design/icons-vue/es/icons/InfoCircleFilled\";\nimport classNames from '../_util/classNames';\nimport useStyle from './style';\nimport useMessage from './useMessage';\nlet defaultDuration = 3;\nlet defaultTop;\nlet messageInstance;\nlet key = 1;\nlet localPrefixCls = '';\nlet transitionName = 'move-up';\nlet hasTransitionName = false;\nlet getContainer = () => document.body;\nlet maxCount;\nlet rtl = false;\nexport function getKeyThenIncreaseKey() {\n return key++;\n}\nfunction setMessageConfig(options) {\n if (options.top !== undefined) {\n defaultTop = options.top;\n messageInstance = null; // delete messageInstance for new defaultTop\n }\n if (options.duration !== undefined) {\n defaultDuration = options.duration;\n }\n if (options.prefixCls !== undefined) {\n localPrefixCls = options.prefixCls;\n }\n if (options.getContainer !== undefined) {\n getContainer = options.getContainer;\n messageInstance = null; // delete messageInstance for new getContainer\n }\n if (options.transitionName !== undefined) {\n transitionName = options.transitionName;\n messageInstance = null; // delete messageInstance for new transitionName\n hasTransitionName = true;\n }\n if (options.maxCount !== undefined) {\n maxCount = options.maxCount;\n messageInstance = null;\n }\n if (options.rtl !== undefined) {\n rtl = options.rtl;\n }\n}\nfunction getMessageInstance(args, callback) {\n if (messageInstance) {\n callback(messageInstance);\n return;\n }\n Notification.newInstance({\n appContext: args.appContext,\n prefixCls: args.prefixCls || localPrefixCls,\n rootPrefixCls: args.rootPrefixCls,\n transitionName,\n hasTransitionName,\n style: {\n top: defaultTop\n },\n getContainer: getContainer || args.getPopupContainer,\n maxCount,\n name: 'message',\n useStyle\n }, instance => {\n if (messageInstance) {\n callback(messageInstance);\n return;\n }\n messageInstance = instance;\n callback(instance);\n });\n}\nconst typeToIcon = {\n info: InfoCircleFilled,\n success: CheckCircleFilled,\n error: CloseCircleFilled,\n warning: ExclamationCircleFilled,\n loading: LoadingOutlined\n};\nexport const typeList = Object.keys(typeToIcon);\nfunction notice(args) {\n const duration = args.duration !== undefined ? args.duration : defaultDuration;\n const target = args.key || getKeyThenIncreaseKey();\n const closePromise = new Promise(resolve => {\n const callback = () => {\n if (typeof args.onClose === 'function') {\n args.onClose();\n }\n return resolve(true);\n };\n getMessageInstance(args, instance => {\n instance.notice({\n key: target,\n duration,\n style: args.style || {},\n class: args.class,\n content: _ref => {\n let {\n prefixCls\n } = _ref;\n const Icon = typeToIcon[args.type];\n const iconNode = Icon ? _createVNode(Icon, null, null) : '';\n const messageClass = classNames(`${prefixCls}-custom-content`, {\n [`${prefixCls}-${args.type}`]: args.type,\n [`${prefixCls}-rtl`]: rtl === true\n });\n return _createVNode(\"div\", {\n \"class\": messageClass\n }, [typeof args.icon === 'function' ? args.icon() : args.icon || iconNode, _createVNode(\"span\", null, [typeof args.content === 'function' ? args.content() : args.content])]);\n },\n onClose: callback,\n onClick: args.onClick\n });\n });\n });\n const result = () => {\n if (messageInstance) {\n messageInstance.removeNotice(target);\n }\n };\n result.then = (filled, rejected) => closePromise.then(filled, rejected);\n result.promise = closePromise;\n return result;\n}\nfunction isArgsProps(content) {\n return Object.prototype.toString.call(content) === '[object Object]' && !!content.content;\n}\nconst api = {\n open: notice,\n config: setMessageConfig,\n destroy(messageKey) {\n if (messageInstance) {\n if (messageKey) {\n const {\n removeNotice\n } = messageInstance;\n removeNotice(messageKey);\n } else {\n const {\n destroy\n } = messageInstance;\n destroy();\n messageInstance = null;\n }\n }\n }\n};\nexport function attachTypeApi(originalApi, type) {\n originalApi[type] = (content, duration, onClose) => {\n if (isArgsProps(content)) {\n return originalApi.open(_extends(_extends({}, content), {\n type\n }));\n }\n if (typeof duration === 'function') {\n onClose = duration;\n duration = undefined;\n }\n return originalApi.open({\n content,\n duration,\n type,\n onClose\n });\n };\n}\ntypeList.forEach(type => attachTypeApi(api, type));\napi.warn = api.warning;\napi.useMessage = useMessage;\n/** @private test Only function. Not work on production */\nexport const getInstance = () => process.env.NODE_ENV === 'test' ? messageInstance : null;\nexport default api;","import { Keyframes } from '../../_util/cssinjs';\nconst genNotificationPlacementStyle = token => {\n const {\n componentCls,\n width,\n notificationMarginEdge\n } = token;\n const notificationTopFadeIn = new Keyframes('antNotificationTopFadeIn', {\n '0%': {\n marginTop: '-100%',\n opacity: 0\n },\n '100%': {\n marginTop: 0,\n opacity: 1\n }\n });\n const notificationBottomFadeIn = new Keyframes('antNotificationBottomFadeIn', {\n '0%': {\n marginBottom: '-100%',\n opacity: 0\n },\n '100%': {\n marginBottom: 0,\n opacity: 1\n }\n });\n const notificationLeftFadeIn = new Keyframes('antNotificationLeftFadeIn', {\n '0%': {\n right: {\n _skip_check_: true,\n value: width\n },\n opacity: 0\n },\n '100%': {\n right: {\n _skip_check_: true,\n value: 0\n },\n opacity: 1\n }\n });\n return {\n [`&${componentCls}-top, &${componentCls}-bottom`]: {\n marginInline: 0\n },\n [`&${componentCls}-top`]: {\n [`${componentCls}-fade-enter${componentCls}-fade-enter-active, ${componentCls}-fade-appear${componentCls}-fade-appear-active`]: {\n animationName: notificationTopFadeIn\n }\n },\n [`&${componentCls}-bottom`]: {\n [`${componentCls}-fade-enter${componentCls}-fade-enter-active, ${componentCls}-fade-appear${componentCls}-fade-appear-active`]: {\n animationName: notificationBottomFadeIn\n }\n },\n [`&${componentCls}-topLeft, &${componentCls}-bottomLeft`]: {\n marginInlineEnd: 0,\n marginInlineStart: notificationMarginEdge,\n [`${componentCls}-fade-enter${componentCls}-fade-enter-active, ${componentCls}-fade-appear${componentCls}-fade-appear-active`]: {\n animationName: notificationLeftFadeIn\n }\n }\n };\n};\nexport default genNotificationPlacementStyle;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { Keyframes } from '../../_util/cssinjs';\nimport { genComponentStyleHook, mergeToken } from '../../theme/internal';\nimport genNotificationPlacementStyle from './placement';\nimport { resetComponent } from '../../style';\nconst genNotificationStyle = token => {\n const {\n iconCls,\n componentCls,\n // .ant-notification\n boxShadowSecondary,\n fontSizeLG,\n notificationMarginBottom,\n borderRadiusLG,\n colorSuccess,\n colorInfo,\n colorWarning,\n colorError,\n colorTextHeading,\n notificationBg,\n notificationPadding,\n notificationMarginEdge,\n motionDurationMid,\n motionEaseInOut,\n fontSize,\n lineHeight,\n width,\n notificationIconSize\n } = token;\n const noticeCls = `${componentCls}-notice`;\n const notificationFadeIn = new Keyframes('antNotificationFadeIn', {\n '0%': {\n left: {\n _skip_check_: true,\n value: width\n },\n opacity: 0\n },\n '100%': {\n left: {\n _skip_check_: true,\n value: 0\n },\n opacity: 1\n }\n });\n const notificationFadeOut = new Keyframes('antNotificationFadeOut', {\n '0%': {\n maxHeight: token.animationMaxHeight,\n marginBottom: notificationMarginBottom,\n opacity: 1\n },\n '100%': {\n maxHeight: 0,\n marginBottom: 0,\n paddingTop: 0,\n paddingBottom: 0,\n opacity: 0\n }\n });\n return [\n // ============================ Holder ============================\n {\n [componentCls]: _extends(_extends(_extends(_extends({}, resetComponent(token)), {\n position: 'fixed',\n zIndex: token.zIndexPopup,\n marginInlineEnd: notificationMarginEdge,\n [`${componentCls}-hook-holder`]: {\n position: 'relative'\n },\n [`&${componentCls}-top, &${componentCls}-bottom`]: {\n [`${componentCls}-notice`]: {\n marginInline: 'auto auto'\n }\n },\n [`&${componentCls}-topLeft, &${componentCls}-bottomLeft`]: {\n [`${componentCls}-notice`]: {\n marginInlineEnd: 'auto',\n marginInlineStart: 0\n }\n },\n // animation\n [`${componentCls}-fade-enter, ${componentCls}-fade-appear`]: {\n animationDuration: token.motionDurationMid,\n animationTimingFunction: motionEaseInOut,\n animationFillMode: 'both',\n opacity: 0,\n animationPlayState: 'paused'\n },\n [`${componentCls}-fade-leave`]: {\n animationTimingFunction: motionEaseInOut,\n animationFillMode: 'both',\n animationDuration: motionDurationMid,\n animationPlayState: 'paused'\n },\n [`${componentCls}-fade-enter${componentCls}-fade-enter-active, ${componentCls}-fade-appear${componentCls}-fade-appear-active`]: {\n animationName: notificationFadeIn,\n animationPlayState: 'running'\n },\n [`${componentCls}-fade-leave${componentCls}-fade-leave-active`]: {\n animationName: notificationFadeOut,\n animationPlayState: 'running'\n }\n }), genNotificationPlacementStyle(token)), {\n // RTL\n '&-rtl': {\n direction: 'rtl',\n [`${componentCls}-notice-btn`]: {\n float: 'left'\n }\n }\n })\n },\n // ============================ Notice ============================\n {\n [noticeCls]: {\n position: 'relative',\n width,\n maxWidth: `calc(100vw - ${notificationMarginEdge * 2}px)`,\n marginBottom: notificationMarginBottom,\n marginInlineStart: 'auto',\n padding: notificationPadding,\n overflow: 'hidden',\n lineHeight,\n wordWrap: 'break-word',\n background: notificationBg,\n borderRadius: borderRadiusLG,\n boxShadow: boxShadowSecondary,\n [`${componentCls}-close-icon`]: {\n fontSize,\n cursor: 'pointer'\n },\n [`${noticeCls}-message`]: {\n marginBottom: token.marginXS,\n color: colorTextHeading,\n fontSize: fontSizeLG,\n lineHeight: token.lineHeightLG\n },\n [`${noticeCls}-description`]: {\n fontSize\n },\n [`&${noticeCls}-closable ${noticeCls}-message`]: {\n paddingInlineEnd: token.paddingLG\n },\n [`${noticeCls}-with-icon ${noticeCls}-message`]: {\n marginBottom: token.marginXS,\n marginInlineStart: token.marginSM + notificationIconSize,\n fontSize: fontSizeLG\n },\n [`${noticeCls}-with-icon ${noticeCls}-description`]: {\n marginInlineStart: token.marginSM + notificationIconSize,\n fontSize\n },\n // Icon & color style in different selector level\n // https://github.com/ant-design/ant-design/issues/16503\n // https://github.com/ant-design/ant-design/issues/15512\n [`${noticeCls}-icon`]: {\n position: 'absolute',\n fontSize: notificationIconSize,\n lineHeight: 0,\n // icon-font\n [`&-success${iconCls}`]: {\n color: colorSuccess\n },\n [`&-info${iconCls}`]: {\n color: colorInfo\n },\n [`&-warning${iconCls}`]: {\n color: colorWarning\n },\n [`&-error${iconCls}`]: {\n color: colorError\n }\n },\n [`${noticeCls}-close`]: {\n position: 'absolute',\n top: token.notificationPaddingVertical,\n insetInlineEnd: token.notificationPaddingHorizontal,\n color: token.colorIcon,\n outline: 'none',\n width: token.notificationCloseButtonSize,\n height: token.notificationCloseButtonSize,\n borderRadius: token.borderRadiusSM,\n transition: `background-color ${token.motionDurationMid}, color ${token.motionDurationMid}`,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n '&:hover': {\n color: token.colorIconHover,\n backgroundColor: token.wireframe ? 'transparent' : token.colorFillContent\n }\n },\n [`${noticeCls}-btn`]: {\n float: 'right',\n marginTop: token.marginSM\n }\n }\n },\n // ============================= Pure =============================\n {\n [`${noticeCls}-pure-panel`]: {\n margin: 0\n }\n }];\n};\n// ============================== Export ==============================\nexport default genComponentStyleHook('Notification', token => {\n const notificationPaddingVertical = token.paddingMD;\n const notificationPaddingHorizontal = token.paddingLG;\n const notificationToken = mergeToken(token, {\n // default.less variables\n notificationBg: token.colorBgElevated,\n notificationPaddingVertical,\n notificationPaddingHorizontal,\n // index.less variables\n notificationPadding: `${token.paddingMD}px ${token.paddingContentHorizontalLG}px`,\n notificationMarginBottom: token.margin,\n notificationMarginEdge: token.marginLG,\n animationMaxHeight: 150,\n notificationIconSize: token.fontSizeLG * token.lineHeightLG,\n notificationCloseButtonSize: token.controlHeightLG * 0.55\n });\n return [genNotificationStyle(notificationToken)];\n}, token => ({\n zIndexPopup: token.zIndexPopupBase + 50,\n width: 384\n}));","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport { createVNode as _createVNode } from \"vue\";\nimport { computed, defineComponent } from 'vue';\nimport useStyle from './style';\nimport useConfigInject from '../config-provider/hooks/useConfigInject';\nimport Notice from '../vc-notification/Notice';\nimport classNames from '../_util/classNames';\nimport LoadingOutlined from \"@ant-design/icons-vue/es/icons/LoadingOutlined\";\nimport ExclamationCircleFilled from \"@ant-design/icons-vue/es/icons/ExclamationCircleFilled\";\nimport CloseCircleFilled from \"@ant-design/icons-vue/es/icons/CloseCircleFilled\";\nimport CheckCircleFilled from \"@ant-design/icons-vue/es/icons/CheckCircleFilled\";\nimport InfoCircleFilled from \"@ant-design/icons-vue/es/icons/InfoCircleFilled\";\nimport CloseOutlined from \"@ant-design/icons-vue/es/icons/CloseOutlined\";\nimport { renderHelper } from '../_util/util';\nexport function getCloseIcon(prefixCls, closeIcon) {\n return closeIcon || _createVNode(\"span\", {\n \"class\": `${prefixCls}-close-x`\n }, [_createVNode(CloseOutlined, {\n \"class\": `${prefixCls}-close-icon`\n }, null)]);\n}\nexport const TypeIcon = {\n info: _createVNode(InfoCircleFilled, null, null),\n success: _createVNode(CheckCircleFilled, null, null),\n error: _createVNode(CloseCircleFilled, null, null),\n warning: _createVNode(ExclamationCircleFilled, null, null),\n loading: _createVNode(LoadingOutlined, null, null)\n};\nconst typeToIcon = {\n success: CheckCircleFilled,\n info: InfoCircleFilled,\n error: CloseCircleFilled,\n warning: ExclamationCircleFilled\n};\nexport function PureContent(_ref) {\n let {\n prefixCls,\n icon,\n type,\n message,\n description,\n btn\n } = _ref;\n let iconNode = null;\n if (icon) {\n iconNode = _createVNode(\"span\", {\n \"class\": `${prefixCls}-icon`\n }, [renderHelper(icon)]);\n } else if (type) {\n const Icon = typeToIcon[type];\n iconNode = _createVNode(Icon, {\n \"class\": `${prefixCls}-icon ${prefixCls}-icon-${type}`\n }, null);\n }\n return _createVNode(\"div\", {\n \"class\": classNames({\n [`${prefixCls}-with-icon`]: iconNode\n }),\n \"role\": \"alert\"\n }, [iconNode, _createVNode(\"div\", {\n \"class\": `${prefixCls}-message`\n }, [message]), _createVNode(\"div\", {\n \"class\": `${prefixCls}-description`\n }, [description]), btn && _createVNode(\"div\", {\n \"class\": `${prefixCls}-btn`\n }, [btn])]);\n}\n/** @private Internal Component. Do not use in your production. */\nexport default defineComponent({\n name: 'PurePanel',\n inheritAttrs: false,\n props: ['prefixCls', 'icon', 'type', 'message', 'description', 'btn', 'closeIcon'],\n setup(props) {\n const {\n getPrefixCls\n } = useConfigInject('notification', props);\n const prefixCls = computed(() => props.prefixCls || getPrefixCls('notification'));\n const noticePrefixCls = computed(() => `${prefixCls.value}-notice`);\n const [, hashId] = useStyle(prefixCls);\n return () => {\n return _createVNode(Notice, _objectSpread(_objectSpread({}, props), {}, {\n \"prefixCls\": prefixCls.value,\n \"class\": classNames(hashId.value, `${noticePrefixCls.value}-pure-panel`),\n \"noticeKey\": \"pure\",\n \"duration\": null,\n \"closable\": props.closable,\n \"closeIcon\": getCloseIcon(prefixCls.value, props.closeIcon)\n }), {\n default: () => [_createVNode(PureContent, {\n \"prefixCls\": noticePrefixCls.value,\n \"icon\": props.icon,\n \"type\": props.type,\n \"message\": props.message,\n \"description\": props.description,\n \"btn\": props.btn\n }, null)]\n });\n };\n }\n});","export function getPlacementStyle(placement, top, bottom) {\n let style;\n top = typeof top === 'number' ? `${top}px` : top;\n bottom = typeof bottom === 'number' ? `${bottom}px` : bottom;\n switch (placement) {\n case 'top':\n style = {\n left: '50%',\n transform: 'translateX(-50%)',\n right: 'auto',\n top,\n bottom: 'auto'\n };\n break;\n case 'topLeft':\n style = {\n left: 0,\n top,\n bottom: 'auto'\n };\n break;\n case 'topRight':\n style = {\n right: 0,\n top,\n bottom: 'auto'\n };\n break;\n case 'bottom':\n style = {\n left: '50%',\n transform: 'translateX(-50%)',\n right: 'auto',\n top: 'auto',\n bottom\n };\n break;\n case 'bottomLeft':\n style = {\n left: 0,\n top: 'auto',\n bottom\n };\n break;\n default:\n style = {\n right: 0,\n top: 'auto',\n bottom\n };\n break;\n }\n return style;\n}\nexport function getMotion(prefixCls) {\n return {\n name: `${prefixCls}-fade`\n };\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { createVNode as _createVNode } from \"vue\";\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { shallowRef, computed, defineComponent } from 'vue';\nimport { useNotification as useVcNotification } from '../vc-notification';\nimport useStyle from './style';\nimport { getCloseIcon, PureContent } from './PurePanel';\nimport { getMotion, getPlacementStyle } from './util';\nimport useConfigInject from '../config-provider/hooks/useConfigInject';\nimport classNames from '../_util/classNames';\nconst DEFAULT_OFFSET = 24;\nconst DEFAULT_DURATION = 4.5;\nconst Holder = defineComponent({\n name: 'Holder',\n inheritAttrs: false,\n props: ['prefixCls', 'class', 'type', 'icon', 'content', 'onAllRemoved'],\n setup(props, _ref) {\n let {\n expose\n } = _ref;\n const {\n getPrefixCls,\n getPopupContainer\n } = useConfigInject('notification', props);\n const prefixCls = computed(() => props.prefixCls || getPrefixCls('notification'));\n // =============================== Style ===============================\n const getStyles = placement => {\n var _a, _b;\n return getPlacementStyle(placement, (_a = props.top) !== null && _a !== void 0 ? _a : DEFAULT_OFFSET, (_b = props.bottom) !== null && _b !== void 0 ? _b : DEFAULT_OFFSET);\n };\n // Style\n const [, hashId] = useStyle(prefixCls);\n const getClassName = () => classNames(hashId.value, {\n [`${prefixCls.value}-rtl`]: props.rtl\n });\n // ============================== Motion ===============================\n const getNotificationMotion = () => getMotion(prefixCls.value);\n // ============================== Origin ===============================\n const [api, holder] = useVcNotification({\n prefixCls: prefixCls.value,\n getStyles,\n getClassName,\n motion: getNotificationMotion,\n closable: true,\n closeIcon: getCloseIcon(prefixCls.value),\n duration: DEFAULT_DURATION,\n getContainer: () => {\n var _a, _b;\n return ((_a = props.getPopupContainer) === null || _a === void 0 ? void 0 : _a.call(props)) || ((_b = getPopupContainer.value) === null || _b === void 0 ? void 0 : _b.call(getPopupContainer)) || document.body;\n },\n maxCount: props.maxCount,\n hashId: hashId.value,\n onAllRemoved: props.onAllRemoved\n });\n // ================================ Ref ================================\n expose(_extends(_extends({}, api), {\n prefixCls: prefixCls.value,\n hashId\n }));\n return holder;\n }\n});\n// ==============================================================================\n// == Hook ==\n// ==============================================================================\nexport function useInternalNotification(notificationConfig) {\n const holderRef = shallowRef(null);\n const holderKey = Symbol('notificationHolderKey');\n // ================================ API ================================\n // Wrap with notification content\n // >>> Open\n const open = config => {\n if (!holderRef.value) {\n return;\n }\n const {\n open: originOpen,\n prefixCls,\n hashId\n } = holderRef.value;\n const noticePrefixCls = `${prefixCls}-notice`;\n const {\n message,\n description,\n icon,\n type,\n btn,\n class: className\n } = config,\n restConfig = __rest(config, [\"message\", \"description\", \"icon\", \"type\", \"btn\", \"class\"]);\n return originOpen(_extends(_extends({\n placement: 'topRight'\n }, restConfig), {\n content: () => _createVNode(PureContent, {\n \"prefixCls\": noticePrefixCls,\n \"icon\": typeof icon === 'function' ? icon() : icon,\n \"type\": type,\n \"message\": typeof message === 'function' ? message() : message,\n \"description\": typeof description === 'function' ? description() : description,\n \"btn\": typeof btn === 'function' ? btn() : btn\n }, null),\n // @ts-ignore\n class: classNames(type && `${noticePrefixCls}-${type}`, hashId, className)\n }));\n };\n // >>> destroy\n const destroy = key => {\n var _a, _b;\n if (key !== undefined) {\n (_a = holderRef.value) === null || _a === void 0 ? void 0 : _a.close(key);\n } else {\n (_b = holderRef.value) === null || _b === void 0 ? void 0 : _b.destroy();\n }\n };\n const wrapAPI = {\n open,\n destroy\n };\n const keys = ['success', 'info', 'warning', 'error'];\n keys.forEach(type => {\n wrapAPI[type] = config => open(_extends(_extends({}, config), {\n type\n }));\n });\n // ============================== Return ===============================\n return [wrapAPI, () => _createVNode(Holder, _objectSpread(_objectSpread({\n \"key\": holderKey\n }, notificationConfig), {}, {\n \"ref\": holderRef\n }), null)];\n}\nexport default function useNotification(notificationConfig) {\n return useInternalNotification(notificationConfig);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { createVNode as _createVNode } from \"vue\";\nvar __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function (resolve) {\n resolve(value);\n });\n }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nimport Notification from '../vc-notification';\nimport CheckCircleOutlined from \"@ant-design/icons-vue/es/icons/CheckCircleOutlined\";\nimport InfoCircleOutlined from \"@ant-design/icons-vue/es/icons/InfoCircleOutlined\";\nimport CloseCircleOutlined from \"@ant-design/icons-vue/es/icons/CloseCircleOutlined\";\nimport ExclamationCircleOutlined from \"@ant-design/icons-vue/es/icons/ExclamationCircleOutlined\";\nimport CloseOutlined from \"@ant-design/icons-vue/es/icons/CloseOutlined\";\nimport { renderHelper } from '../_util/util';\nimport { globalConfig } from '../config-provider';\nimport classNames from '../_util/classNames';\nimport useStyle from './style';\nimport useNotification from './useNotification';\nimport { getPlacementStyle } from './util';\nconst notificationInstance = {};\nlet defaultDuration = 4.5;\nlet defaultTop = '24px';\nlet defaultBottom = '24px';\nlet defaultPrefixCls = '';\nlet defaultPlacement = 'topRight';\nlet defaultGetContainer = () => document.body;\nlet defaultCloseIcon = null;\nlet rtl = false;\nlet maxCount;\nfunction setNotificationConfig(options) {\n const {\n duration,\n placement,\n bottom,\n top,\n getContainer,\n closeIcon,\n prefixCls\n } = options;\n if (prefixCls !== undefined) {\n defaultPrefixCls = prefixCls;\n }\n if (duration !== undefined) {\n defaultDuration = duration;\n }\n if (placement !== undefined) {\n defaultPlacement = placement;\n }\n if (bottom !== undefined) {\n defaultBottom = typeof bottom === 'number' ? `${bottom}px` : bottom;\n }\n if (top !== undefined) {\n defaultTop = typeof top === 'number' ? `${top}px` : top;\n }\n if (getContainer !== undefined) {\n defaultGetContainer = getContainer;\n }\n if (closeIcon !== undefined) {\n defaultCloseIcon = closeIcon;\n }\n if (options.rtl !== undefined) {\n rtl = options.rtl;\n }\n if (options.maxCount !== undefined) {\n maxCount = options.maxCount;\n }\n}\nfunction getNotificationInstance(_ref, callback) {\n let {\n prefixCls: customizePrefixCls,\n placement = defaultPlacement,\n getContainer = defaultGetContainer,\n top,\n bottom,\n closeIcon = defaultCloseIcon,\n appContext\n } = _ref;\n const {\n getPrefixCls\n } = globalConfig();\n const prefixCls = getPrefixCls('notification', customizePrefixCls || defaultPrefixCls);\n const cacheKey = `${prefixCls}-${placement}-${rtl}`;\n const cacheInstance = notificationInstance[cacheKey];\n if (cacheInstance) {\n Promise.resolve(cacheInstance).then(instance => {\n callback(instance);\n });\n return;\n }\n const notificationClass = classNames(`${prefixCls}-${placement}`, {\n [`${prefixCls}-rtl`]: rtl === true\n });\n Notification.newInstance({\n name: 'notification',\n prefixCls: customizePrefixCls || defaultPrefixCls,\n useStyle,\n class: notificationClass,\n style: getPlacementStyle(placement, top !== null && top !== void 0 ? top : defaultTop, bottom !== null && bottom !== void 0 ? bottom : defaultBottom),\n appContext,\n getContainer,\n closeIcon: _ref2 => {\n let {\n prefixCls\n } = _ref2;\n const closeIconToRender = _createVNode(\"span\", {\n \"class\": `${prefixCls}-close-x`\n }, [renderHelper(closeIcon, {}, _createVNode(CloseOutlined, {\n \"class\": `${prefixCls}-close-icon`\n }, null))]);\n return closeIconToRender;\n },\n maxCount,\n hasTransitionName: true\n }, notification => {\n notificationInstance[cacheKey] = notification;\n callback(notification);\n });\n}\nconst typeToIcon = {\n success: CheckCircleOutlined,\n info: InfoCircleOutlined,\n error: CloseCircleOutlined,\n warning: ExclamationCircleOutlined\n};\nfunction notice(args) {\n const {\n icon,\n type,\n description,\n message,\n btn\n } = args;\n const duration = args.duration === undefined ? defaultDuration : args.duration;\n getNotificationInstance(args, notification => {\n notification.notice({\n content: _ref3 => {\n let {\n prefixCls: outerPrefixCls\n } = _ref3;\n const prefixCls = `${outerPrefixCls}-notice`;\n let iconNode = null;\n if (icon) {\n iconNode = () => _createVNode(\"span\", {\n \"class\": `${prefixCls}-icon`\n }, [renderHelper(icon)]);\n } else if (type) {\n const Icon = typeToIcon[type];\n iconNode = () => _createVNode(Icon, {\n \"class\": `${prefixCls}-icon ${prefixCls}-icon-${type}`\n }, null);\n }\n return _createVNode(\"div\", {\n \"class\": iconNode ? `${prefixCls}-with-icon` : ''\n }, [iconNode && iconNode(), _createVNode(\"div\", {\n \"class\": `${prefixCls}-message`\n }, [!description && iconNode ? _createVNode(\"span\", {\n \"class\": `${prefixCls}-message-single-line-auto-margin`\n }, null) : null, renderHelper(message)]), _createVNode(\"div\", {\n \"class\": `${prefixCls}-description`\n }, [renderHelper(description)]), btn ? _createVNode(\"span\", {\n \"class\": `${prefixCls}-btn`\n }, [renderHelper(btn)]) : null]);\n },\n duration,\n closable: true,\n onClose: args.onClose,\n onClick: args.onClick,\n key: args.key,\n style: args.style || {},\n class: args.class\n });\n });\n}\nconst api = {\n open: notice,\n close(key) {\n Object.keys(notificationInstance).forEach(cacheKey => Promise.resolve(notificationInstance[cacheKey]).then(instance => {\n instance.removeNotice(key);\n }));\n },\n config: setNotificationConfig,\n destroy() {\n Object.keys(notificationInstance).forEach(cacheKey => {\n Promise.resolve(notificationInstance[cacheKey]).then(instance => {\n instance.destroy();\n });\n delete notificationInstance[cacheKey]; // lgtm[js/missing-await]\n });\n }\n};\nconst iconTypes = ['success', 'info', 'warning', 'error'];\niconTypes.forEach(type => {\n api[type] = args => api.open(_extends(_extends({}, args), {\n type\n }));\n});\napi.warn = api.warning;\napi.useNotification = useNotification;\n/** @private test Only function. Not work on production */\nexport const getInstance = cacheKey => __awaiter(void 0, void 0, void 0, function* () {\n return process.env.NODE_ENV === 'test' ? notificationInstance[cacheKey] : null;\n});\nexport default api;","/* eslint-disable import/prefer-default-export, prefer-destructuring */\nimport { TinyColor } from '@ctrl/tinycolor';\nimport { generate } from '@ant-design/colors';\nimport { updateCSS } from '../vc-util/Dom/dynamicCSS';\nimport canUseDom from '../_util/canUseDom';\nimport warning from '../_util/warning';\nconst dynamicStyleMark = `-ant-${Date.now()}-${Math.random()}`;\nexport function getStyle(globalPrefixCls, theme) {\n const variables = {};\n const formatColor = (color, updater) => {\n let clone = color.clone();\n clone = (updater === null || updater === void 0 ? void 0 : updater(clone)) || clone;\n return clone.toRgbString();\n };\n const fillColor = (colorVal, type) => {\n const baseColor = new TinyColor(colorVal);\n const colorPalettes = generate(baseColor.toRgbString());\n variables[`${type}-color`] = formatColor(baseColor);\n variables[`${type}-color-disabled`] = colorPalettes[1];\n variables[`${type}-color-hover`] = colorPalettes[4];\n variables[`${type}-color-active`] = colorPalettes[6];\n variables[`${type}-color-outline`] = baseColor.clone().setAlpha(0.2).toRgbString();\n variables[`${type}-color-deprecated-bg`] = colorPalettes[0];\n variables[`${type}-color-deprecated-border`] = colorPalettes[2];\n };\n // ================ Primary Color ================\n if (theme.primaryColor) {\n fillColor(theme.primaryColor, 'primary');\n const primaryColor = new TinyColor(theme.primaryColor);\n const primaryColors = generate(primaryColor.toRgbString());\n // Legacy - We should use semantic naming standard\n primaryColors.forEach((color, index) => {\n variables[`primary-${index + 1}`] = color;\n });\n // Deprecated\n variables['primary-color-deprecated-l-35'] = formatColor(primaryColor, c => c.lighten(35));\n variables['primary-color-deprecated-l-20'] = formatColor(primaryColor, c => c.lighten(20));\n variables['primary-color-deprecated-t-20'] = formatColor(primaryColor, c => c.tint(20));\n variables['primary-color-deprecated-t-50'] = formatColor(primaryColor, c => c.tint(50));\n variables['primary-color-deprecated-f-12'] = formatColor(primaryColor, c => c.setAlpha(c.getAlpha() * 0.12));\n const primaryActiveColor = new TinyColor(primaryColors[0]);\n variables['primary-color-active-deprecated-f-30'] = formatColor(primaryActiveColor, c => c.setAlpha(c.getAlpha() * 0.3));\n variables['primary-color-active-deprecated-d-02'] = formatColor(primaryActiveColor, c => c.darken(2));\n }\n // ================ Success Color ================\n if (theme.successColor) {\n fillColor(theme.successColor, 'success');\n }\n // ================ Warning Color ================\n if (theme.warningColor) {\n fillColor(theme.warningColor, 'warning');\n }\n // ================= Error Color =================\n if (theme.errorColor) {\n fillColor(theme.errorColor, 'error');\n }\n // ================= Info Color ==================\n if (theme.infoColor) {\n fillColor(theme.infoColor, 'info');\n }\n // Convert to css variables\n const cssList = Object.keys(variables).map(key => `--${globalPrefixCls}-${key}: ${variables[key]};`);\n return `\n :root {\n ${cssList.join('\\n')}\n }\n `.trim();\n}\nexport function registerTheme(globalPrefixCls, theme) {\n const style = getStyle(globalPrefixCls, theme);\n if (canUseDom()) {\n updateCSS(style, `${dynamicStyleMark}-dynamic-theme`);\n } else {\n warning(false, 'ConfigProvider', 'SSR do not support dynamic theme with css variables.');\n }\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { useStyleRegister } from '../../_util/cssinjs';\nimport { resetIcon } from '../../style';\nimport { useToken } from '../../theme/internal';\nimport { computed } from 'vue';\nconst useStyle = iconPrefixCls => {\n const [theme, token] = useToken();\n // Generate style for icons\n return useStyleRegister(computed(() => ({\n theme: theme.value,\n token: token.value,\n hashId: '',\n path: ['ant-design-icons', iconPrefixCls.value]\n })), () => [{\n [`.${iconPrefixCls.value}`]: _extends(_extends({}, resetIcon()), {\n [`.${iconPrefixCls.value} .${iconPrefixCls.value}-icon`]: {\n display: 'block'\n }\n })\n }]);\n};\nexport default useStyle;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { defaultConfig } from '../../theme/internal';\nimport { computed } from 'vue';\nexport default function useTheme(theme, parentTheme) {\n const themeConfig = computed(() => (theme === null || theme === void 0 ? void 0 : theme.value) || {});\n const parentThemeConfig = computed(() => themeConfig.value.inherit === false || !(parentTheme === null || parentTheme === void 0 ? void 0 : parentTheme.value) ? defaultConfig : parentTheme.value);\n const mergedTheme = computed(() => {\n if (!(theme === null || theme === void 0 ? void 0 : theme.value)) {\n return parentTheme === null || parentTheme === void 0 ? void 0 : parentTheme.value;\n }\n // Override\n const mergedComponents = _extends({}, parentThemeConfig.value.components);\n Object.keys(theme.value.components || {}).forEach(componentName => {\n mergedComponents[componentName] = _extends(_extends({}, mergedComponents[componentName]), theme.value.components[componentName]);\n });\n // Base token\n return _extends(_extends(_extends({}, parentThemeConfig.value), themeConfig.value), {\n token: _extends(_extends({}, parentThemeConfig.value.token), themeConfig.value.token),\n components: mergedComponents\n });\n });\n return mergedTheme;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { createVNode as _createVNode } from \"vue\";\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { watch, computed, reactive, defineComponent, watchEffect } from 'vue';\nimport defaultRenderEmpty from './renderEmpty';\nimport LocaleProvider, { ANT_MARK } from '../locale-provider';\nimport LocaleReceiver from '../locale-provider/LocaleReceiver';\nimport message from '../message';\nimport notification from '../notification';\nimport { registerTheme } from './cssVariables';\nimport defaultLocale from '../locale/en_US';\nimport useStyle from './style';\nimport useTheme from './hooks/useTheme';\nimport defaultSeedToken from '../theme/themes/seed';\nimport { useConfigContextProvider, useConfigContextInject, configProviderProps, useProvideGlobalForm, defaultIconPrefixCls } from './context';\nimport { useProviderSize } from './SizeContext';\nimport { useProviderDisabled } from './DisabledContext';\nimport { createTheme } from '../_util/cssinjs';\nimport { DesignTokenProvider } from '../theme/internal';\nexport const defaultPrefixCls = 'ant';\nexport { defaultIconPrefixCls };\nfunction getGlobalPrefixCls() {\n return globalConfigForApi.prefixCls || defaultPrefixCls;\n}\nfunction getGlobalIconPrefixCls() {\n return globalConfigForApi.iconPrefixCls || defaultIconPrefixCls;\n}\nconst globalConfigBySet = reactive({}); // 权重最大\nexport const globalConfigForApi = reactive({});\nexport const configConsumerProps = ['getTargetContainer', 'getPopupContainer', 'rootPrefixCls', 'getPrefixCls', 'renderEmpty', 'csp', 'autoInsertSpaceInButton', 'locale', 'pageHeader'];\nwatchEffect(() => {\n _extends(globalConfigForApi, globalConfigBySet);\n globalConfigForApi.prefixCls = getGlobalPrefixCls();\n globalConfigForApi.iconPrefixCls = getGlobalIconPrefixCls();\n globalConfigForApi.getPrefixCls = (suffixCls, customizePrefixCls) => {\n if (customizePrefixCls) return customizePrefixCls;\n return suffixCls ? `${globalConfigForApi.prefixCls}-${suffixCls}` : globalConfigForApi.prefixCls;\n };\n globalConfigForApi.getRootPrefixCls = () => {\n // If Global prefixCls provided, use this\n if (globalConfigForApi.prefixCls) {\n return globalConfigForApi.prefixCls;\n }\n // Fallback to default prefixCls\n return getGlobalPrefixCls();\n };\n});\nlet stopWatchEffect;\nconst setGlobalConfig = params => {\n if (stopWatchEffect) {\n stopWatchEffect();\n }\n stopWatchEffect = watchEffect(() => {\n _extends(globalConfigBySet, reactive(params));\n _extends(globalConfigForApi, reactive(params));\n });\n if (params.theme) {\n registerTheme(getGlobalPrefixCls(), params.theme);\n }\n};\nexport const globalConfig = () => ({\n getPrefixCls: (suffixCls, customizePrefixCls) => {\n if (customizePrefixCls) return customizePrefixCls;\n return suffixCls ? `${getGlobalPrefixCls()}-${suffixCls}` : getGlobalPrefixCls();\n },\n getIconPrefixCls: getGlobalIconPrefixCls,\n getRootPrefixCls: () => {\n // If Global prefixCls provided, use this\n if (globalConfigForApi.prefixCls) {\n return globalConfigForApi.prefixCls;\n }\n // Fallback to default prefixCls\n return getGlobalPrefixCls();\n }\n});\nconst ConfigProvider = defineComponent({\n compatConfig: {\n MODE: 3\n },\n name: 'AConfigProvider',\n inheritAttrs: false,\n props: configProviderProps(),\n setup(props, _ref) {\n let {\n slots\n } = _ref;\n const parentContext = useConfigContextInject();\n const getPrefixCls = (suffixCls, customizePrefixCls) => {\n const {\n prefixCls = 'ant'\n } = props;\n if (customizePrefixCls) return customizePrefixCls;\n const mergedPrefixCls = prefixCls || parentContext.getPrefixCls('');\n return suffixCls ? `${mergedPrefixCls}-${suffixCls}` : mergedPrefixCls;\n };\n const iconPrefixCls = computed(() => props.iconPrefixCls || parentContext.iconPrefixCls.value || defaultIconPrefixCls);\n const shouldWrapSSR = computed(() => iconPrefixCls.value !== parentContext.iconPrefixCls.value);\n const csp = computed(() => {\n var _a;\n return props.csp || ((_a = parentContext.csp) === null || _a === void 0 ? void 0 : _a.value);\n });\n const wrapSSR = useStyle(iconPrefixCls);\n const mergedTheme = useTheme(computed(() => props.theme), computed(() => {\n var _a;\n return (_a = parentContext.theme) === null || _a === void 0 ? void 0 : _a.value;\n }));\n const renderEmptyComponent = name => {\n const renderEmpty = props.renderEmpty || slots.renderEmpty || parentContext.renderEmpty || defaultRenderEmpty;\n return renderEmpty(name);\n };\n const autoInsertSpaceInButton = computed(() => {\n var _a, _b;\n return (_a = props.autoInsertSpaceInButton) !== null && _a !== void 0 ? _a : (_b = parentContext.autoInsertSpaceInButton) === null || _b === void 0 ? void 0 : _b.value;\n });\n const locale = computed(() => {\n var _a;\n return props.locale || ((_a = parentContext.locale) === null || _a === void 0 ? void 0 : _a.value);\n });\n watch(locale, () => {\n globalConfigBySet.locale = locale.value;\n }, {\n immediate: true\n });\n const direction = computed(() => {\n var _a;\n return props.direction || ((_a = parentContext.direction) === null || _a === void 0 ? void 0 : _a.value);\n });\n const space = computed(() => {\n var _a, _b;\n return (_a = props.space) !== null && _a !== void 0 ? _a : (_b = parentContext.space) === null || _b === void 0 ? void 0 : _b.value;\n });\n const virtual = computed(() => {\n var _a, _b;\n return (_a = props.virtual) !== null && _a !== void 0 ? _a : (_b = parentContext.virtual) === null || _b === void 0 ? void 0 : _b.value;\n });\n const dropdownMatchSelectWidth = computed(() => {\n var _a, _b;\n return (_a = props.dropdownMatchSelectWidth) !== null && _a !== void 0 ? _a : (_b = parentContext.dropdownMatchSelectWidth) === null || _b === void 0 ? void 0 : _b.value;\n });\n const getTargetContainer = computed(() => {\n var _a;\n return props.getTargetContainer !== undefined ? props.getTargetContainer : (_a = parentContext.getTargetContainer) === null || _a === void 0 ? void 0 : _a.value;\n });\n const getPopupContainer = computed(() => {\n var _a;\n return props.getPopupContainer !== undefined ? props.getPopupContainer : (_a = parentContext.getPopupContainer) === null || _a === void 0 ? void 0 : _a.value;\n });\n const pageHeader = computed(() => {\n var _a;\n return props.pageHeader !== undefined ? props.pageHeader : (_a = parentContext.pageHeader) === null || _a === void 0 ? void 0 : _a.value;\n });\n const input = computed(() => {\n var _a;\n return props.input !== undefined ? props.input : (_a = parentContext.input) === null || _a === void 0 ? void 0 : _a.value;\n });\n const pagination = computed(() => {\n var _a;\n return props.pagination !== undefined ? props.pagination : (_a = parentContext.pagination) === null || _a === void 0 ? void 0 : _a.value;\n });\n const form = computed(() => {\n var _a;\n return props.form !== undefined ? props.form : (_a = parentContext.form) === null || _a === void 0 ? void 0 : _a.value;\n });\n const select = computed(() => {\n var _a;\n return props.select !== undefined ? props.select : (_a = parentContext.select) === null || _a === void 0 ? void 0 : _a.value;\n });\n const componentSize = computed(() => props.componentSize);\n const componentDisabled = computed(() => props.componentDisabled);\n const wave = computed(() => {\n var _a, _b;\n return (_a = props.wave) !== null && _a !== void 0 ? _a : (_b = parentContext.wave) === null || _b === void 0 ? void 0 : _b.value;\n });\n const configProvider = {\n csp,\n autoInsertSpaceInButton,\n locale,\n direction,\n space,\n virtual,\n dropdownMatchSelectWidth,\n getPrefixCls,\n iconPrefixCls,\n theme: computed(() => {\n var _a, _b;\n return (_a = mergedTheme.value) !== null && _a !== void 0 ? _a : (_b = parentContext.theme) === null || _b === void 0 ? void 0 : _b.value;\n }),\n renderEmpty: renderEmptyComponent,\n getTargetContainer,\n getPopupContainer,\n pageHeader,\n input,\n pagination,\n form,\n select,\n componentSize,\n componentDisabled,\n transformCellText: computed(() => props.transformCellText),\n wave\n };\n // ================================ Dynamic theme ================================\n const memoTheme = computed(() => {\n const _a = mergedTheme.value || {},\n {\n algorithm,\n token\n } = _a,\n rest = __rest(_a, [\"algorithm\", \"token\"]);\n const themeObj = algorithm && (!Array.isArray(algorithm) || algorithm.length > 0) ? createTheme(algorithm) : undefined;\n return _extends(_extends({}, rest), {\n theme: themeObj,\n token: _extends(_extends({}, defaultSeedToken), token)\n });\n });\n const validateMessagesRef = computed(() => {\n var _a, _b;\n // Additional Form provider\n let validateMessages = {};\n if (locale.value) {\n validateMessages = ((_a = locale.value.Form) === null || _a === void 0 ? void 0 : _a.defaultValidateMessages) || ((_b = defaultLocale.Form) === null || _b === void 0 ? void 0 : _b.defaultValidateMessages) || {};\n }\n if (props.form && props.form.validateMessages) {\n validateMessages = _extends(_extends({}, validateMessages), props.form.validateMessages);\n }\n return validateMessages;\n });\n useConfigContextProvider(configProvider);\n useProvideGlobalForm({\n validateMessages: validateMessagesRef\n });\n useProviderSize(componentSize);\n useProviderDisabled(componentDisabled);\n const renderProvider = legacyLocale => {\n var _a, _b;\n let childNode = shouldWrapSSR.value ? wrapSSR((_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots)) : (_b = slots.default) === null || _b === void 0 ? void 0 : _b.call(slots);\n if (props.theme) {\n const _childNode = function () {\n return childNode;\n }();\n childNode = _createVNode(DesignTokenProvider, {\n \"value\": memoTheme.value\n }, {\n default: () => [_childNode]\n });\n }\n return _createVNode(LocaleProvider, {\n \"locale\": locale.value || legacyLocale,\n \"ANT_MARK__\": ANT_MARK\n }, {\n default: () => [childNode]\n });\n };\n watchEffect(() => {\n if (direction.value) {\n message.config({\n rtl: direction.value === 'rtl'\n });\n notification.config({\n rtl: direction.value === 'rtl'\n });\n }\n });\n return () => _createVNode(LocaleReceiver, {\n \"children\": (_, __, legacyLocale) => renderProvider(legacyLocale)\n }, null);\n }\n});\nConfigProvider.config = setGlobalConfig;\nConfigProvider.install = function (app) {\n app.component(ConfigProvider.name, ConfigProvider);\n};\nexport default ConfigProvider;","import { useRequest } from 'liyu-pc-base/init-plugin';\n\nexport async function queryRoleAndPerson(params?: { [key: string]: any }): Promise<RoleResponse> {\n return useRequest().post('/permission/query_role_and_person_list', params);\n}\n\nexport async function removeRole(params: Record<string, any>) {\n return useRequest().post('/permission/delete_role', params);\n}\nexport async function recoverRole(params: Record<string, any>) {\n return useRequest().post('/permission/recover_role', params);\n}\nexport async function query_role_and_person_by_admin_list(params?: {\n [key: string]: any;\n}): Promise<RoleResponse> {\n return useRequest().post('/permission/query_role_and_person_by_admin_list', params);\n}\n\nexport async function addRole(params: Record<string, any>) {\n return useRequest().post('/permission/create_role', params);\n}\n\nexport async function updateRole(params: Record<string, any>) {\n return useRequest().post('/permission/update_role', params);\n}\nexport async function copy_role_info(params: Record<string, any>) {\n return useRequest().post('/permission/copy_role_info', params);\n}\nexport async function import_role(params: Record<string, any>) {\n return useRequest().post('/permission/import_role', params);\n}\nexport async function import_role_by_super(params: Record<string, any>) {\n return useRequest().post('/permission/import_role_by_super', params);\n}\nexport async function export_role_by_super(params: Record<string, any>) {\n return useRequest().post('/permission/export_role_by_super', params);\n}\ninterface RuleItem {\n key: string | number;\n callNo: number;\n avatar: string;\n desc: string;\n disabled: false;\n href: string;\n name: string;\n owner: string;\n progress: number;\n status: number;\n updatedAt: string;\n createdAt: string;\n}\n\ninterface RoleResponse {\n current: number;\n data: RuleItem[];\n pageSize: string;\n success: boolean;\n total: number;\n}\n","import { message } from 'ant-design-vue/es';\nimport { reactive } from 'vue';\n\nimport modalBox from 'liyu-pc-base/components/form-modal/modal-tools';\nimport { copy_role_info } from 'liyu-pc-base/api/permission/auth-manage';\nimport { event_obj } from 'liyu-pc-base/init-plugin';\nimport type { BtnListConfig, HeadBtnListConfig } from 'liyu-pc-base/api/typing';\n\nexport const btn_list: BtnListConfig = [\n {\n name: '权限配置',\n type: 'dropdown',\n is_show: ({ record }) => {\n return record.is_active;\n },\n cb: ({ record }) => {\n const editModal = reactive({\n visible: true,\n role_id: record.id,\n aim_org_id: record.org_id,\n component: 'AuthEditModal',\n ok: (data: any) => {},\n });\n modalBox(editModal);\n },\n },\n {\n name: '复制角色',\n type: 'dropdown',\n is_show: ({ record }) => {\n return record.is_active;\n },\n cb: ({ record, current_org }) => {\n const editModal = reactive({\n open: true,\n title: '复制角色',\n form: {\n settings: {\n name: '表单名称',\n labelAlign: 'right',\n layout: 'horizontal',\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '角色名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写角色名称',\n },\n {\n type: 'input',\n name: 'flag',\n label: '角色标识',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写角色标识',\n },\n {\n type: 'textarea',\n name: 'desc',\n label: '角色描述',\n disabled: false,\n allowClear: true,\n defaultValue: '',\n placeholder: '请填写角色描述',\n },\n ],\n rules: {\n name: [{ required: true, message: '角色名称必须填写' }],\n },\n model: reactive({\n org_id: current_org.id,\n name: '',\n desc: '',\n flag: '',\n }),\n },\n options: {},\n ok: data => {\n copy_role_info({\n ...data,\n org_id: current_org.id,\n role_id: record.id,\n }).then(() => {\n message.success('复制角色成功');\n event_obj().emit('refresh');\n });\n },\n });\n modalBox(editModal);\n },\n },\n];\n\nexport const head_btn_list: HeadBtnListConfig = [\n {\n name: '导出权限',\n clazz: 'primary',\n model_kind: 'custom_component',\n model_config: {\n component: 'ExportRole',\n },\n },\n {\n name: '导入权限',\n clazz: 'primary',\n model_kind: 'custom_component',\n model_config: {\n component: 'ImportRole',\n },\n },\n {\n name: '同步角色',\n model_kind: 'custom_component',\n type: 'dropdown',\n clazz: 'primary',\n model_config: {\n title: '同步角色',\n component: 'SyncRole',\n },\n authority: 'permission/sync_role',\n },\n];\n","import type { BtnListConfig, HeadBtnListConfig } from 'liyu-pc-base/api/typing';\nexport const btn_list: BtnListConfig = [];\nexport const config = {\n creatCol: [],\n updateCol: [],\n};\n\nexport const head_btn_list: HeadBtnListConfig = [];\n","import type { TableColumn } from 'liyu-pc-base/typing';\nimport type { Record, SearchConfig } from 'liyu-pc-base/components/remotePages/typing';\nimport { btn_list, head_btn_list } from './permission-role-config';\nimport { event_obj } from 'liyu-pc-base/init-plugin';\n\nexport default () => {\n const titleList = {\n title: '权限管理',\n addModalTitle: '新建角色',\n updateTitle: '修改',\n is_create: 'permission/create_role', // userStore.CHECK_AUTH(CREATE_ROLE), // 是否有【新建】按钮\n is_update: 'permission/update_role', // userStore.CHECK_AUTH(UPDATE_ROLE), // 是否有【修改】按钮\n is_remove: 'permission/delete_role', // userStore.CHECK_AUTH(DELETE_ROLE), // 是否有【删除】按钮\n is_recover: 'permission/recover_role', // userStore.CHECK_AUTH(RECOVER_ROLE), // 是否有【恢复】按钮\n };\n\n const api_fields: Record = {\n update: {\n role_id: 'id',\n },\n delete: {\n role_id: 'id',\n },\n recover: {\n role_id: 'id',\n },\n updateData: {\n org_id: 'org_id',\n role_id: 'id',\n },\n };\n\n return {\n addData: '/permission/create_role',\n updateData: '/permission/update_role',\n removeData: '/permission/delete_role',\n recoverData: '/permission/recover_role',\n titleList,\n api_fields,\n btn_list,\n head_btn_list,\n event_obj: event_obj(),\n queryConditionGroupData: null,\n is_selection: true,\n };\n};\n","import { addPerson, resetPassword, updatePerson } from 'liyu-pc-base/api/permission/user-manage';\nimport modalBox from 'liyu-pc-base/components/form-modal/modal-tools';\nimport { createVNode, reactive } from 'vue';\nimport { message, Modal } from 'ant-design-vue';\nimport { event_obj } from 'liyu-pc-base/init-plugin';\nimport type { BtnListConfig, HeadBtnListConfig } from 'liyu-pc-base/api/typing';\nimport { ExclamationCircleOutlined } from '@ant-design/icons-vue';\n\nexport const btn_list: BtnListConfig = [\n {\n name: '修改',\n type: 'dropdown',\n clazz: 'primary',\n cb: ({ record }) => {\n const editModal = reactive({\n visible: true,\n title: '修改',\n loading: false,\n form: {\n settings: {\n labelAlign: 'right',\n layout: 'horizontal',\n col: [],\n },\n fields: [\n {\n type: 'remoteselect',\n name: 'aim_org_id',\n label: '隶属组织',\n disabled: true,\n allowClear: true,\n labelKey: 'name',\n valueKey: 'id',\n placeholder: '请选择隶属组织',\n datasourceType: 'remote',\n mode: 'default',\n default: true,\n modalType: 'select-org-id',\n },\n {\n type: 'input',\n name: 'username',\n label: '手机号',\n disabled: false,\n allowClear: true,\n inputType: 'number',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填手机号',\n },\n {\n type: 'input',\n name: 'realname',\n label: '姓名',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填姓名',\n },\n {\n type: 'select',\n name: 'manage_type',\n label: '用户类型',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填姓名',\n },\n {\n type: 'remoteselect',\n name: 'role_ids',\n label: '角色',\n disabled: false,\n placeholder: '请选择角色',\n datasourceType: 'remote',\n mode: 'multiple',\n allowClear: true,\n modalType: 'liyu_permission-role',\n },\n ],\n rules: {},\n model: reactive({\n aim_org_id: record.org_id,\n person_id: record.id,\n username: record.user__username,\n realname: record.realname,\n title: record.title,\n manage_type: record.manage_type,\n email: record.email,\n role_ids: record.role_list?.map((item: any) => item.id),\n // group_ids: group_ids,\n }),\n },\n options: {\n manage_type: [\n { label: '普通用户', value: 0 },\n { label: '管理员', value: 1 },\n { label: '超级管理员', value: 2 },\n ],\n },\n ok: (payload: any) => {\n return new Promise(resolve => {\n editModal.loading = true;\n updatePerson({\n ...payload,\n })\n .then((res: any) => {\n message.success('修改成功');\n Object.assign(record, res);\n event_obj().emit('refresh');\n resolve(null);\n })\n .finally(() => {\n editModal.loading = false;\n });\n });\n },\n });\n modalBox(editModal);\n },\n },\n {\n name: '重置密码',\n clazz: 'primary',\n cb: ({ record }) => {\n Modal.confirm({\n title: '温馨提示',\n content: '是否重置 [' + record.realname + '] 的密码?',\n icon: () => createVNode(ExclamationCircleOutlined),\n okText: '确定',\n onOk() {\n return new Promise(resolve => {\n resetPassword({\n org_id: record.org_id,\n username: record.user__username,\n })\n .then(() => {\n message.success('重置密码成功');\n })\n .finally(() => {\n resolve(null);\n });\n }).catch(() => console.log('Oops errors!'));\n },\n onCancel() {\n },\n });\n },\n },\n];\nexport const config = {\n creatCol: [],\n updateCol: [],\n};\n\nexport const head_btn_list: HeadBtnListConfig = [\n {\n name: '新建用户',\n type: 'dropdown',\n is_show: true,\n clazz: 'primary',\n cb: ({ searchModel }) => {\n const editModal = reactive({\n visible: true,\n title: '新建用户',\n loading: false,\n form: {\n settings: {\n labelAlign: 'right',\n layout: 'horizontal',\n col: [],\n },\n fields: [\n {\n type: 'remoteselect',\n name: 'aim_org_id',\n label: '隶属组织',\n disabled: true,\n allowClear: true,\n labelKey: 'name',\n valueKey: 'id',\n placeholder: '请选择隶属组织',\n datasourceType: 'remote',\n mode: 'default',\n default: true,\n modalType: 'select-org-id',\n },\n {\n type: 'input',\n name: 'username',\n label: '手机号',\n disabled: false,\n allowClear: true,\n inputType: 'number',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填手机号',\n },\n {\n type: 'input',\n name: 'realname',\n label: '姓名',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填姓名',\n },\n {\n type: 'select',\n name: 'manage_type',\n label: '用户类型',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填姓名',\n },\n {\n type: 'remoteselect',\n name: 'role_ids',\n label: '角色',\n disabled: false,\n placeholder: '请选择角色',\n datasourceType: 'remote',\n mode: 'multiple',\n allowClear: true,\n modalType: 'liyu_permission-role',\n },\n ],\n rules: {},\n model: reactive({\n aim_org_id: searchModel.aim_org_id,\n person_id: null,\n username: null,\n realname: null,\n manage_type: 1,\n role_ids: [],\n }),\n },\n options: {\n manage_type: [\n { label: '普通用户', value: 0 },\n { label: '管理员', value: 1 },\n { label: '超级管理员', value: 2 },\n ],\n },\n ok: (payload: any) => {\n return new Promise(resolve => {\n editModal.loading = true;\n addPerson({\n ...payload,\n })\n .then((res: any) => {\n message.success('修改成功');\n event_obj().emit('refresh');\n resolve(null);\n })\n .finally(() => {\n editModal.loading = false;\n });\n });\n },\n });\n modalBox(editModal);\n },\n },\n];\n","import { TableColumn } from 'liyu-pc-base/typing';\nimport { Record, SearchConfig } from 'liyu-pc-base/components/remotePages/typing';\nimport { btn_list, config, head_btn_list } from './permission-user-config';\nimport { event_obj } from 'liyu-pc-base/init-plugin';\nimport { reactive } from 'vue';\nimport { useUserStore } from 'liyu-pc-base/init-plugin';\n\nexport default () => {\n const userStore = useUserStore();\n const current_org = userStore.currentOrg; // 当前组织org\n\n const search_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'inline',\n },\n fields: [\n {\n type: 'remoteselect',\n name: 'aim_org_id',\n label: '目标组织',\n disabled: false,\n placeholder: '请选择目标组织',\n datasourceType: 'remote',\n mode: 'default',\n allowClear: true,\n labelKey: 'name',\n valueKey: 'id',\n modalType: 'sys-query_org_for_login_list',\n },\n {\n type: 'input',\n name: 'name',\n label: '名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写用户名称',\n },\n {\n type: 'select',\n name: 'manage_type',\n label: '用户类型',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填姓名',\n },\n ],\n rules: {},\n model: reactive({\n org_id: current_org.id,\n aim_org_id: current_org.id,\n is_active: true,\n name: '',\n manage_type: null,\n get_role: true,\n }),\n options: {\n manage_type: [\n { label: '普通用户', value: 0 },\n { label: '管理员', value: 1 },\n { label: '超级管理员', value: 2 },\n ],\n },\n };\n\n const edit_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'horizontal',\n col: config.creatCol,\n },\n fields: [\n {\n type: 'remoteselect',\n name: 'aim_org_id',\n label: '隶属组织',\n disabled: false,\n allowClear: true,\n labelKey: 'name',\n valueKey: 'id',\n placeholder: '请选择隶属组织',\n datasourceType: 'remote',\n mode: 'default',\n default: true,\n modalType: 'select-org-id',\n },\n {\n type: 'input',\n name: 'username',\n label: '手机号',\n disabled: false,\n allowClear: true,\n inputType: 'number',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填手机号',\n },\n {\n type: 'input',\n name: 'realname',\n label: '姓名',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填姓名',\n },\n {\n type: 'select',\n name: 'manage_type',\n label: '用户类型',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填姓名',\n },\n {\n type: 'remoteselect',\n name: 'role_ids',\n label: '角色',\n disabled: false,\n placeholder: '请选择角色',\n datasourceType: 'remote',\n mode: 'multiple',\n allowClear: true,\n modalType: 'liyu_permission-role',\n },\n ],\n rules: {\n username: [{ required: true, pattern: /^1[123456789]\\d{9}$/, message: '请输入正确手机号' }],\n realname: [{ required: true, message: '请输入姓名' }],\n },\n model: {\n org_id: current_org?.id,\n id: null,\n username: '',\n realname: '',\n manage_type: 1,\n aim_org_id: current_org?.id,\n },\n options: {\n manage_type: [\n { label: '普通用户', value: 0 },\n { label: '管理员', value: 1 },\n { label: '超级管理员', value: 2 },\n ],\n },\n };\n\n const update_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'horizontal',\n col: config.creatCol,\n },\n fields: [],\n rules: {},\n model: reactive({\n org_id: current_org.id,\n id: null,\n username: '',\n realname: '',\n title: '',\n aim_org_id: '',\n email: '',\n }),\n options: {},\n };\n\n const titleList = {\n title: '用户管理',\n addModalTitle: '新建用户',\n updateTitle: '修改',\n is_create: false, // 是否有【新建】按钮\n is_update: false, // 是否有【修改】按钮\n is_remove: true, // 是否有【删除】按钮\n is_recover: false, // 是否有【恢复】按钮\n };\n\n const api_fields: Record = {\n update: {\n aim_org_id: 'org_id',\n person_id: 'id',\n },\n delete: {\n person_id: 'id',\n },\n recover: {\n person_id: 'id',\n },\n updateData: {\n org_id: 'org_id',\n person_id: 'id',\n },\n };\n\n const baseColumns: TableColumn[] = [\n {\n title: '序号',\n width: 50,\n dataIndex: 'index',\n checked: true,\n fixed: 'left',\n },\n {\n title: '名称',\n width: 150,\n dataIndex: 'realname',\n checked: true,\n fixed: 'left',\n },\n {\n title: '用户类型',\n width: 120,\n dataIndex: 'manage_type',\n checked: true,\n cellComponent: 'tag',\n contentMap: {\n 0: '普通用户',\n 1: '管理员',\n 2: '超级管理员',\n },\n colorMap: {\n 0: '',\n 2: 'cyan',\n },\n },\n {\n title: '手机号',\n width: 130,\n checked: true,\n dataIndex: 'user__username',\n },\n {\n title: '角色',\n minWidth: 200,\n checked: true,\n dataIndex: 'role_list',\n cellComponent: 'list',\n },\n // {\n // title: '电子邮箱',\n // width: 150,\n // dataIndex: 'email',\n // },\n // {\n // title: '微信',\n // width: 80,\n // dataIndex: 'user__lyuserinfo__wechat_username',\n // cellComponent: 'tag',\n // color: (record: any, text: any) => {\n // return text ? 'green' : 'red';\n // },\n // content: (record: any, text: any) => {\n // return text ? '已绑定' : '未绑定';\n // },\n // },\n // {\n // title: '隶属部门',\n // minWidth: 200,\n // dataIndex: 'group_list',\n // cellComponent: 'list',\n // },\n // {\n // title: '职务',\n // width: 150,\n // dataIndex: 'title',\n // },\n {\n title: '是否可用',\n width: 100,\n dataIndex: 'is_active',\n checked: true,\n resizable: true,\n cellComponent: 'boolean',\n name1: '可用',\n name2: '禁用',\n filterMultiple: false,\n filters: [\n { text: '全部', value: '' },\n { text: '可用', value: 'true' },\n { text: '禁用', value: 'false' },\n ],\n },\n {\n title: '操作',\n width: 50,\n checked: true,\n dataIndex: 'action',\n cellComponent: 'action',\n fixed: 'right',\n },\n ];\n\n return {\n searchConfig: search_config,\n formModalConfig: edit_model_config,\n updateFormModalConfig: update_model_config,\n queryData: '/sys/query_person_detail_list',\n addData: '/sys/create_user',\n updateData: '/sys/update_user',\n removeData: '/sys/delete_user',\n recoverData: '/sys/recover_user',\n baseColumns: baseColumns,\n titleList: titleList,\n api_fields: api_fields,\n btn_list: btn_list,\n head_btn_list: head_btn_list,\n event_obj: event_obj(),\n base_search_condition_config_list: [],\n default_search_condition_config_list: [[]],\n condition_group_config_list: [],\n is_show_advantage: false,\n is_show_normal_search: true,\n is_only_show_advantage: false,\n is_only_show_normal_search: true,\n queryConditionGroupData: null,\n isView: false,\n };\n};\n","import {\n queryRole,\n addRole,\n updateRole,\n removeRole,\n recoverRole,\n} from 'liyu-pc-base/api/permission/role-manage';\nimport type { TableColumn } from 'liyu-pc-base/typing';\nimport type { SearchConfig, Record } from 'liyu-pc-base/components/remotePages/typing';\nimport { useUserStore } from 'liyu-pc-base/init-plugin';\nimport { btn_list, head_btn_list, config } from './permission-role-manage-config';\nimport { event_obj } from 'liyu-pc-base/init-plugin';\nimport { reactive } from 'vue';\n\nexport default () => {\n const userStore = useUserStore();\n const current_org = userStore.currentOrg; // 当前组织org\n const search_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'inline',\n },\n fields: [\n {\n type: 'remoteselect',\n name: 'aim_org_id',\n label: '目标组织',\n disabled: false,\n placeholder: '请选择目标组织',\n datasourceType: 'remote',\n mode: 'default',\n allowClear: true,\n labelKey: 'name',\n valueKey: 'id',\n modalType: 'sys-query_org_for_login_list',\n },\n {\n type: 'input',\n name: 'name',\n label: '角色名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写角色名称',\n },\n {\n type: 'radio',\n name: 'is_active',\n label: '状态',\n mode: 'default',\n disabled: false,\n defaultValue: '',\n labelKey: 'name',\n valueKey: 'value',\n placeholder: '请选择状态',\n datasource: 'is_active',\n },\n ],\n rules: {},\n model: reactive({\n org_id: current_org.id,\n aim_org_id: current_org.id,\n is_active: true,\n name: '',\n }),\n };\n const search_options = {\n is_active: [\n { name: '全部', value: '' },\n { name: '正常', value: true },\n { name: '作废', value: false },\n ],\n };\n\n const edit_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: config.creatCol,\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '角色名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写角色名称',\n },\n {\n type: 'input',\n name: 'flag',\n label: '角色标识',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写角色标识',\n },\n {\n type: 'textarea',\n name: 'desc',\n label: '角色描述',\n disabled: false,\n allowClear: true,\n defaultValue: '',\n placeholder: '请填写角色描述',\n },\n ],\n rules: {\n name: [{ required: true, message: '角色名称必须填写' }],\n },\n model: {\n org_id: current_org.id,\n aim_org_id: current_org.id,\n id: null,\n name: '',\n desc: '',\n },\n };\n const edit_model_config_options = {};\n\n const update_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: config.creatCol,\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '角色名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写角色名称',\n },\n {\n type: 'input',\n name: 'flag',\n label: '角色标识',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写角色标识',\n },\n {\n type: 'textarea',\n name: 'desc',\n label: '角色描述',\n disabled: false,\n allowClear: true,\n defaultValue: '',\n placeholder: '请填写角色描述',\n },\n ],\n rules: {},\n model: {\n org_id: current_org.id,\n aim_org_id: current_org.id,\n id: null,\n name: '',\n desc: '',\n },\n };\n const update_model_config_options = {};\n\n const titleList = {\n title: '角色管理',\n addModalTitle: '新建角色',\n updateTitle: '修改',\n is_create: true, // 是否有【新建】按钮\n is_update: true, // 是否有【修改】按钮\n is_remove: true, // 是否有【删除】按钮\n is_recover: true, // 是否有【恢复】按钮\n };\n\n const api_fields: Record = {\n update: {\n role_id: 'id',\n },\n delete: {\n role_id: 'id',\n },\n recover: {\n role_id: 'id',\n },\n updateData: {\n org_id: 'org_id',\n role_id: 'id',\n },\n };\n\n const baseColumns: TableColumn[] = [\n {\n title: '序号',\n width: 50,\n dataIndex: 'index',\n checked: true,\n fixed: 'left',\n },\n {\n title: '名称',\n width: 150,\n dataIndex: 'name',\n checked: true,\n fixed: 'left',\n },\n {\n title: '描述',\n dataIndex: 'desc',\n checked: true,\n },\n {\n title: '角色标识',\n width: 180,\n dataIndex: 'flag',\n checked: true,\n },\n {\n title: '是否可用',\n width: 100,\n dataIndex: 'is_active',\n checked: true,\n resizable: true,\n cellComponent: 'boolean',\n name1: '可用',\n name2: '禁用',\n filterMultiple: false,\n filters: [\n { text: '全部', value: '' },\n { text: '可用', value: 'true' },\n { text: '禁用', value: 'false' },\n ],\n },\n {\n title: '操作',\n width: 50,\n dataIndex: 'action',\n checked: true,\n cellComponent: 'action',\n },\n ];\n\n return {\n searchConfig: search_config,\n searchConfigOptions: search_options,\n formModalConfig: edit_model_config,\n formModalConfigOptions: edit_model_config_options,\n updateFormModalConfig: update_model_config,\n updateFormModalConfigOptions: update_model_config_options,\n queryData: queryRole,\n addData: addRole,\n updateData: updateRole,\n removeData: removeRole,\n recoverData: recoverRole,\n baseColumns: baseColumns,\n titleList: titleList,\n api_fields: api_fields,\n btn_list: btn_list,\n head_btn_list: head_btn_list,\n event_obj: event_obj(),\n base_search_condition_config_list: [],\n default_search_condition_config_list: [[]],\n condition_group_config_list: [],\n is_show_advantage: false,\n is_show_normal_search: true,\n is_only_show_advantage: false,\n is_only_show_normal_search: true,\n queryConditionGroupData: null,\n isView: false,\n };\n};\n","import { useEnv } from 'liyu-pc-base/init-plugin';\nimport cloneDeep from 'lodash-es/cloneDeep';\nimport md5 from 'blueimp-md5';\nimport type { PageConfig } from 'liyu-pc-base/components/remotePages/typing';\n\nexport function generateMD5(str: string): string {\n return md5(str);\n}\n\nconst getI18nId = (modalType: string): string => {\n // 取md5末尾3位\n return generateMD5(modalType).slice(-3);\n};\n\nconst modifyBaseColumns = (\n data: any,\n t: any,\n i18n_id: string,\n get_field_i18n_id: (field: string) => Promise<string>,\n) => {\n if (!data || !Array.isArray(data)) {\n return data;\n }\n data.forEach((item: any) => {\n if (item.title) {\n item.title = t(`${i18n_id}_${item.title}`, {\n defaultValue: item.title,\n });\n }\n if (item.contentMap) {\n Object.keys(item.contentMap).forEach((key: string) => {\n item.contentMap[key] = t(\n `${i18n_id}_${get_field_i18n_id(item.dataIndex)}_${item.contentMap[key]}`,\n {\n defaultValue: item.contentMap[key],\n },\n );\n });\n }\n if (item.filters) {\n item.filters.forEach((filter: any) => {\n if (filter.text) {\n filter.text = t(`${i18n_id}_${get_field_i18n_id(item.dataIndex)}_${filter.text}`, {\n defaultValue: filter.text,\n });\n }\n });\n }\n });\n return data;\n};\n\nconst modifySearchConfig = (\n data: any,\n t: any,\n i18n_id: string,\n get_field_i18n_id: (field: string) => string,\n) => {\n if (data?.fields && Array.isArray(data.fields)) {\n data.fields.forEach((item: any) => {\n if (item.label) {\n item.label = t(`${i18n_id}_${item.label}`, {\n defaultValue: item.label,\n });\n }\n if (Array.isArray(item.placeholder)) {\n item.placeholder = item.placeholder.map((placeholder: string) =>\n t(`${i18n_id}_${placeholder}`, {\n defaultValue: placeholder,\n }),\n );\n } else if (item.placeholder) {\n item.placeholder = t(`${i18n_id}_${item.placeholder}`, {\n defaultValue: item.placeholder,\n });\n }\n });\n }\n if (data?.options) {\n for (const key in data.options) {\n data.options[key].forEach((item: any) => {\n if (item.name) {\n item.name = t(`${i18n_id}_${get_field_i18n_id(key)}_${item.name}`, {\n defaultValue: item.name,\n });\n }\n if (item.label) {\n item.label = t(`${i18n_id}_${get_field_i18n_id(key)}_${item.label}`, {\n defaultValue: item.label,\n });\n }\n });\n }\n }\n const rules = data?.rules;\n if (rules) {\n Object.keys(rules).forEach((key: string) => {\n rules[key].forEach((rule: any) => {\n if (rule.message) {\n rule.message = t(`${i18n_id}_${rule.message}`, {\n defaultValue: rule.message,\n });\n }\n });\n });\n }\n return data;\n};\n\nconst modifyBaseSearchConditionConfigList = (\n data: any,\n t: any,\n i18n_id: string,\n get_field_i18n_id: (field: string) => string,\n) => {\n if (data && Array.isArray(data)) {\n data.forEach((item: any) => {\n if (item.name) {\n item.name = t(`${i18n_id}_${item.name}`, {\n defaultValue: item.name,\n });\n }\n const group = item.group;\n if (group && Array.isArray(group)) {\n group.forEach((groupItem: any) => {\n if (groupItem.label) {\n groupItem.label = t(`${i18n_id}_${groupItem.label}`, {\n defaultValue: groupItem.label,\n });\n }\n if (groupItem.options) {\n groupItem.options.forEach((option: any) => {\n if (option.label) {\n option.label = t(\n `${i18n_id}_${get_field_i18n_id(groupItem.field_name)}_${option.label}`,\n {\n defaultValue: option.label,\n },\n );\n }\n });\n }\n });\n }\n });\n }\n return data;\n};\n\nconst modifyDefaultSearchConditionConfigList = (\n data: any,\n t: any,\n i18n_id: string,\n get_field_i18n_id: (field: string) => string,\n) => {\n if (data && Array.isArray(data)) {\n data.forEach((item: any) => {\n if (item && Array.isArray(item)) {\n item.forEach((field: any) => {\n if (field.label) {\n field.label = t(`${i18n_id}_${field.label}`, {\n defaultValue: field.label,\n });\n }\n });\n }\n });\n }\n return data;\n};\n\nconst modifyConditionGroupConfigList = (\n data: any,\n t: any,\n i18n_id: string,\n get_field_i18n_id: (field: string) => string,\n) => {\n if (data && Array.isArray(data)) {\n data.forEach((item: any) => {\n if (item.label) {\n item.label = t(`${i18n_id}_${item.label}`, {\n defaultValue: item.label,\n });\n }\n });\n }\n return data;\n};\n\nconst modifyFormModalConfig = (\n data: any,\n t: any,\n i18n_id: string,\n get_field_i18n_id: (field: string) => string,\n) => {\n const dynamicFieldList = data?.dynamicFieldList;\n if (dynamicFieldList && Array.isArray(dynamicFieldList)) {\n dynamicFieldList.forEach((item: any) => {\n if (item.group_name) {\n item.group_name = t(`${i18n_id}_${item.group_name}`, {\n defaultValue: item.group_name,\n });\n }\n const children = item.children;\n if (children && Array.isArray(children)) {\n children.forEach((child: any) => {\n if (child.label) {\n child.label = t(`${i18n_id}_${child.label}`, {\n defaultValue: child.label,\n });\n }\n const placeholder = child.placeholder;\n if (placeholder && Array.isArray(placeholder)) {\n child.placeholder = placeholder.map((placeholder: string) =>\n t(`${i18n_id}_${placeholder}`, {\n defaultValue: placeholder,\n }),\n );\n } else if (placeholder) {\n child.placeholder = t(`${i18n_id}_${placeholder}`, {\n defaultValue: placeholder,\n });\n }\n });\n }\n });\n }\n const rules = data?.rules;\n if (rules) {\n Object.keys(rules).forEach((key: string) => {\n rules[key].forEach((rule: any) => {\n if (rule.message) {\n rule.message = t(`${i18n_id}_${rule.message}`, {\n defaultValue: rule.message,\n });\n }\n });\n });\n }\n const options = data?.options;\n if (options) {\n Object.keys(options).forEach((key: string) => {\n options[key].forEach((item: any) => {\n if (item.name) {\n item.name = t(`${i18n_id}_${get_field_i18n_id(key)}_${item.name}`, {\n defaultValue: item.name,\n });\n }\n if (item.label) {\n item.label = t(`${i18n_id}_${get_field_i18n_id(key)}_${item.label}`, {\n defaultValue: item.label,\n });\n }\n });\n });\n }\n return data;\n};\n\nconst modifyTitleList = (\n data: any,\n t: any,\n i18n_id: string,\n get_field_i18n_id: (field: string) => string,\n): any => {\n if (data?.title) {\n data.title = t(`${i18n_id}_${data.title}`, {\n defaultValue: data.title,\n });\n }\n if (data?.addModalTitle) {\n data.addModalTitle = t(`${i18n_id}_${data.addModalTitle}`, {\n defaultValue: data.addModalTitle,\n });\n }\n if (data?.updateTitle) {\n data.updateTitle = t(`${i18n_id}_${data.updateTitle}`, {\n defaultValue: data.updateTitle,\n });\n }\n\n return data;\n};\n\nconst modifyBtnList = (\n data: any,\n t: any,\n i18n_id: string,\n get_field_i18n_id: (field: string) => string,\n): any => {\n if (data && Array.isArray(data)) {\n data.forEach((item: any) => {\n if (item.name) {\n item.name = t(`${i18n_id}_${item.name}`, {\n defaultValue: item.name,\n });\n }\n const model_config = item.model_config;\n if (model_config) {\n if (model_config.title) {\n model_config.title = t(`${i18n_id}_${model_config.title}`, {\n defaultValue: model_config.title,\n });\n }\n if (model_config.content) {\n model_config.content = t(`${i18n_id}_${model_config.content}`, {\n defaultValue: model_config.content,\n });\n }\n if (model_config.form) {\n model_config.form = modifyFormModalConfig(\n model_config.form,\n t,\n i18n_id,\n get_field_i18n_id,\n );\n }\n }\n });\n }\n return data;\n};\n\n// 配置修改函数\nconst modifyFunc = {\n baseColumns: modifyBaseColumns,\n searchConfig: modifySearchConfig,\n base_search_condition_config_list: modifyBaseSearchConditionConfigList,\n default_search_condition_config_list: modifyDefaultSearchConditionConfigList,\n condition_group_config_list: modifyConditionGroupConfigList,\n formModalConfig: modifyFormModalConfig,\n updateFormModalConfig: modifyFormModalConfig,\n titleList: modifyTitleList,\n btn_list: modifyBtnList,\n head_btn_list: modifyBtnList,\n batch_update_list: modifyBtnList,\n};\n\nexport const modify_by_i18n_config = (mergedConfig: any, t: any, modalType: string): PageConfig => {\n const env = useEnv();\n if (!env.VITE_APP_ENABLE_ZH_EN) {\n return mergedConfig;\n }\n\n const result = cloneDeep(mergedConfig);\n const i18n_config = result.i18n;\n Object.keys(result).forEach(key => {\n if (modifyFunc[key]) {\n let i18n_id = i18n_config?.i18n_id;\n let fields = i18n_config?.fields;\n if (!i18n_id) {\n i18n_id = getI18nId(modalType);\n }\n const get_field_i18n_id = (field: string) => {\n if (fields) {\n const field_i18n_id = fields[field]?.i18n_id;\n if (field_i18n_id) {\n return field_i18n_id;\n }\n }\n return getI18nId(field);\n };\n result[key] = modifyFunc[key](result[key], t, i18n_id, get_field_i18n_id);\n }\n });\n console.log('result====', result);\n return result;\n};\n","import type { PageConfig } from 'liyu-pc-base/components/remotePages/typing';\nimport { reactive } from 'vue';\nimport { getApiPermission, getUrl } from 'liyu-pc-base/components/remotePages/utils';\nimport { cloneDeep } from 'lodash';\nimport { usePageConfigStore } from 'liyu-pc-base/init-plugin';\nimport { getApiData } from 'liyu-pc-base/api/api-model';\nimport { useEnv } from 'liyu-pc-base/init-plugin';\nimport { useGlobMap } from 'liyu-pc-base/init-plugin';\nimport { useCellComponentMap, useCellFormatExcelValueMap } from 'liyu-pc-base/init-plugin';\nimport { modify_by_i18n_config } from './i18n_config';\n\nconst mergeBtnList = (config: any[], customConfig: any[]) => {\n if (!customConfig) return config;\n const result = cloneDeep(config || []);\n\n // 创建一个按钮名称到索引的映射\n const btnMap = new Map();\n result.forEach((btn, index) => {\n delete btn._key;\n btnMap.set(btn.name, index);\n });\n\n // 遍历自定义配置进行合并\n let last_order = 0;\n customConfig.forEach(customBtn => {\n if (!customBtn.order) {\n customBtn.order = last_order + 1;\n }\n last_order = customBtn.order;\n customBtn._key = `custom_${customBtn.name}_${Math.random()}`;\n const existingIndex = btnMap.get(customBtn.name);\n\n if (existingIndex !== undefined) {\n // 如果按钮已存在,递归合并子按钮\n const existingBtn = result[existingIndex];\n if (customBtn.children && existingBtn.children) {\n existingBtn.children = mergeBtnList(existingBtn.children, customBtn.children);\n }\n const temp = cloneDeep(customBtn);\n delete temp.children;\n // 合并其他属性\n Object.assign(existingBtn, temp);\n } else {\n const temp = cloneDeep(customBtn);\n result.push(temp);\n if (temp.children) {\n temp.children = mergeBtnList([], temp.children);\n }\n }\n });\n\n return result;\n};\n\nconst mergeDataFunc = {\n btn_list: mergeBtnList,\n head_btn_list: mergeBtnList,\n batch_update_list: mergeBtnList,\n};\n\nconst mergeData = (config: any, customConfig: any) => {\n const res = cloneDeep(config);\n // Object.assign(mergedData, customConfig);\n Object.keys(customConfig).forEach(key => {\n if (mergeDataFunc[key]) {\n res[key] = mergeDataFunc[key](config[key], customConfig[key]);\n } else {\n res[key] = customConfig[key];\n }\n });\n\n Object.assign(config, res);\n};\nconst overrideBaseColumns = (config: any, overrideConfig: any) => {\n if (!config) {\n return;\n }\n config.forEach(item => {\n const dataIndex = item.dataIndex;\n if (overrideConfig[dataIndex]) {\n for (const key in overrideConfig[dataIndex]) {\n if (overrideConfig[dataIndex][key] === null) {\n delete item[key];\n } else {\n item[key] = overrideConfig[dataIndex][key];\n }\n }\n }\n });\n return config;\n};\nconst overrideBaseSearchConditionConfigList = (config: any, overrideConfig: any) => {\n if (!config) {\n return;\n }\n config.forEach(item => {\n const group = item.group;\n if (!group) {\n return;\n }\n group.forEach(groupItem => {\n const field_name = groupItem.field_name;\n if (overrideConfig[field_name]) {\n for (const key in overrideConfig[field_name]) {\n if (overrideConfig[field_name][key] === null) {\n delete groupItem[key];\n } else {\n groupItem[key] = overrideConfig[field_name][key];\n }\n }\n }\n });\n });\n return config;\n};\nconst overrideSearchConfig = (config: any, overrideConfig: any) => {\n if (!config) {\n return;\n }\n const fields = config.fields;\n const rules = config.rules || {};\n const model = config.model || {};\n const options = config.options || {};\n if (!fields) {\n return;\n }\n fields.forEach(field => {\n const name = field.name;\n if (overrideConfig.fields?.[name]) {\n for (const key in overrideConfig.fields[name]) {\n if (overrideConfig.fields[name][key] === null) {\n delete field[key];\n } else {\n field[key] = overrideConfig.fields[name][key];\n }\n }\n }\n if (overrideConfig.rules?.[name] !== undefined) {\n rules[name] = overrideConfig.rules[name];\n }\n if (overrideConfig.model?.[name] !== undefined) {\n model[name] = overrideConfig.model[name];\n }\n if (overrideConfig.options?.[name] !== undefined) {\n options[name] = overrideConfig.options[name];\n }\n });\n const newConfig = {\n fields,\n rules,\n model,\n options,\n };\n Object.assign(config, newConfig);\n return config;\n};\nconst overrideDataFunc = {\n baseColumns: overrideBaseColumns,\n base_search_condition_config_list: overrideBaseSearchConditionConfigList,\n searchConfig: overrideSearchConfig,\n};\n\nconst overrideData = (config: any, overrideConfig: any) => {\n const res = cloneDeep(config);\n // Object.assign(mergedData, customConfig);\n Object.keys(overrideConfig).forEach(key => {\n if (overrideDataFunc[key]) {\n config[key] = overrideDataFunc[key](config[key], overrideConfig[key]);\n }\n });\n return res;\n};\nconst processBaseColumns = (config: any) => {\n if (!config || !Array.isArray(config)) {\n return config;\n }\n const cellComponentMap = useCellComponentMap();\n const cellFormatExcelValueMap = useCellFormatExcelValueMap();\n for (const item of config) {\n if (item.cellComponent && !item.formatExcelValue) {\n const cellComponentData = cellComponentMap[item.cellComponent];\n if (cellComponentData) {\n const defaultExcelFormat = cellComponentData.defaultExcelFormat;\n const cellFormatExcelValue = cellFormatExcelValueMap[defaultExcelFormat];\n if (cellFormatExcelValue) {\n item.formatExcelValue = cellFormatExcelValue.flag;\n }\n }\n }\n }\n return config;\n};\nconst processDataFunc = {\n baseColumns: processBaseColumns,\n};\n\nconst processData = (config: any) => {\n Object.keys(config).forEach(key => {\n if (processDataFunc[key]) {\n config[key] = processDataFunc[key](config[key]);\n }\n });\n};\nconst res_components: { [key: string]: any } = {};\nconst init_components = () => {\n if (Object.keys(res_components).length > 0) {\n return;\n }\n const allComponents = import.meta.glob('liyu-pc-base/components/remotePages/configs/*/*.ts', {\n eager: true,\n });\n const customComponents = useGlobMap('remotePages');\n Object.assign(allComponents, customComponents);\n Object.keys(allComponents).forEach(full_file_name => {\n const file_name_list = full_file_name.split('/');\n const file_name = file_name_list[file_name_list.length - 1].replace('.ts', '');\n\n if (file_name.endsWith('-config')) {\n return;\n }\n // @ts-ignore\n res_components[file_name] = allComponents[full_file_name].default;\n });\n};\nexport const getViewSettingsAndPageConfig = async ({\n org_id,\n user_id,\n app_flag,\n modalType,\n sort_fields,\n is_cache,\n history_id,\n}: {\n org_id: string;\n user_id: number;\n app_flag: string;\n modalType: string;\n sort_fields: string[];\n is_cache: boolean;\n history_id?: number | null;\n}) => {\n const env = useEnv();\n const [viewSettings, defaultAndServerConfig] = await Promise.all([\n getApiData(\n {\n org_id,\n user_id,\n view_project__flag: env.VITE_APP_VIEW_PROJECT_FLAG,\n view_menu__flag: modalType,\n history_id,\n sort_fields,\n is_cache,\n },\n '/view/get_view_settings_for_user',\n ),\n getDefaultAndServerConfig({\n org_id,\n app_flag,\n modalType,\n history_id,\n }),\n ]);\n\n return {\n ...viewSettings,\n defaultAndServerConfig: defaultAndServerConfig,\n };\n};\n\nexport const getDefaultAndServerConfig = async ({\n org_id,\n app_flag,\n modalType,\n history_id,\n}: {\n org_id: string;\n app_flag: string;\n modalType: string;\n history_id?: number | null;\n}) => {\n const env = useEnv();\n const model_name = modalType.split('-')[1];\n const flag = modalType + '_config';\n const serverConfigParams: any = {\n flag,\n org_id,\n };\n if (history_id) {\n serverConfigParams.history_id = history_id;\n }\n const defaultConfigParams: any = {\n org_id,\n model_name,\n get_i18n_config: !!env.VITE_APP_ENABLE_ZH_EN,\n };\n const overrideConfigParams: any = {\n org_id,\n model_name,\n api_url: `/${app_flag}/query_${model_name}_list`,\n };\n const result: any = {};\n const skip_app_flag = [];\n if (skip_app_flag.includes(app_flag)) {\n const serverRes = await getApiData(\n serverConfigParams,\n '/sys/get_global_custom_data_by_flag_without_org_id',\n );\n result.defaultConfig = {};\n result.override = null;\n result.serverConfig = serverRes || {};\n return result;\n } else {\n const [defaultRes, overrideRes, serverRes] = await Promise.all([\n getApiData(\n defaultConfigParams,\n `/${app_flag}/dev_get_column_config_and_remote_config_json`,\n false,\n {\n skip_error: true,\n },\n ),\n getApiData(overrideConfigParams, `/${app_flag}/override_column_config`, false, {\n skip_error: true,\n }),\n getApiData(serverConfigParams, '/sys/get_global_custom_data_by_flag_without_org_id'),\n ]);\n result.defaultConfig = defaultRes || {};\n result.override = overrideRes || {};\n result.serverConfig = serverRes || {};\n return result;\n }\n};\n\nexport const getPageConfig = (\n app_flag: string,\n modalType: string,\n defaultAndServerConfig: {\n defaultConfig: any;\n serverConfig: any;\n override?: any;\n },\n t: any,\n options?: {\n use_store?: Boolean;\n to_i18n?: Boolean;\n enable_btn?: Boolean;\n },\n): PageConfig => {\n const { use_store = true, to_i18n = false, enable_btn = false } = options || {};\n init_components();\n const pageConfigStore = use_store ? usePageConfigStore() : null;\n let components: any;\n if (pageConfigStore) {\n if (defaultAndServerConfig) {\n pageConfigStore.cleanPageConfig(modalType);\n } else {\n const cachedConfig = pageConfigStore.getCachedConfig(modalType);\n if (cachedConfig) {\n return cachedConfig;\n }\n }\n }\n if (res_components[modalType] == undefined) {\n console.log('remotePages3没有组件:' + modalType);\n if (pageConfigStore) {\n pageConfigStore.setCustomConfig(modalType, {});\n }\n } else {\n components = { ...res_components[modalType](t) };\n if (pageConfigStore) {\n pageConfigStore.setCustomConfig(modalType, components);\n }\n }\n const titleList: any = reactive({\n title: '',\n addModalTitle: '新建',\n updateTitle: '修改',\n is_create: getApiPermission(app_flag + '-' + modalType.split('-')[1], 'create_'), // 是否有【新建】按钮\n is_update: getApiPermission(app_flag + '-' + modalType.split('-')[1], 'update_'), // 是否有【修改】按钮\n is_remove: getApiPermission(app_flag + '-' + modalType.split('-')[1], 'delete_'), // 是否有【删除】按钮\n is_recover: getApiPermission(app_flag + '-' + modalType.split('-')[1], 'recover_'), // 是否有【恢复】按钮\n });\n const searchConfig: any = {\n rules: reactive({}),\n fields: [],\n settings: {},\n model: reactive({}),\n options: {},\n };\n const defaultConfig: any = {\n is_selection: false,\n addData: getUrl(app_flag + '-' + modalType.split('-')[1], ['create_', '']),\n updateData: getUrl(app_flag + '-' + modalType.split('-')[1], ['update_', '']),\n recoverData: getUrl(app_flag + '-' + modalType.split('-')[1], ['recover_', '']),\n removeData: getUrl(app_flag + '-' + modalType.split('-')[1], ['delete_', '']),\n countData: getUrl(app_flag + '-' + modalType.split('-')[1], ['query_', '_count']),\n queryData: getUrl(app_flag + '-' + modalType.split('-')[1], ['query_', '_list']),\n queryConditionGroupData: getUrl(app_flag + '-' + modalType.split('-')[1], ['query_', '_group']),\n getData: getUrl(app_flag + '-' + modalType.split('-')[1], ['get_', '']),\n\n searchConfig: searchConfig,\n base_search_condition_config_list: null,\n default_search_condition_config_list: null,\n condition_group_config_list: null,\n is_show_advantage: true,\n is_show_normal_search: false,\n is_only_show_advantage: true,\n is_only_show_normal_search: false,\n init_request: true,\n processData: null,\n refresh_type: '手动', // '手动', '5s', '10s', '30s'\n required_condition: [],\n globalSearch: null,\n\n formModalConfig: null,\n updateFormModalConfig: null,\n titleList: titleList,\n api_fields: null,\n btn_list: null,\n head_btn_list: null,\n batch_update_list: null,\n event_obj: undefined,\n\n is_operation: [true, true, true, true],\n baseColumns: null,\n column_list_change: null,\n processColumn: null,\n customCell: null,\n customRow: null,\n customHeaderCell: null,\n\n is_pagination: true,\n pageSize: 50,\n page_size_options: [\n '10',\n '20',\n '50',\n '100',\n '200',\n '500',\n '1000',\n '3000',\n '10000',\n '50000',\n '60000',\n '70000',\n ], // 默认页面选项\n is_page_mode_change: false,\n is_stripe: null,\n\n isView: true,\n default_hide_view: false,\n rowKey: 'id',\n rowSelection: { type: 'checkbax', checkStrictly: false },\n expandedRowRender: null,\n expandedRowRenderComponent: null,\n headerComponent: null,\n expandFunc: null,\n summaryData: null,\n summaryType: null,\n default_column_field: ['is_active'],\n i18n: null,\n get_db_alias: null,\n advanced_base_conditions: [],\n };\n if (defaultAndServerConfig) {\n Object.assign(defaultConfig, defaultAndServerConfig.defaultConfig);\n if (pageConfigStore) {\n pageConfigStore.setDefaultConfig(modalType, defaultConfig);\n }\n } else {\n const cachedDefaultConfig = pageConfigStore && pageConfigStore.getDefaultConfig(modalType);\n if (cachedDefaultConfig) {\n Object.assign(defaultConfig, cachedDefaultConfig);\n }\n }\n const mergedConfig = cloneDeep(defaultConfig);\n let serverConfig = null;\n if (defaultAndServerConfig) {\n serverConfig = defaultAndServerConfig.serverConfig;\n if (pageConfigStore) {\n pageConfigStore.setServerConfig(modalType, serverConfig);\n }\n } else {\n serverConfig = pageConfigStore && pageConfigStore.getServerConfig(modalType);\n }\n if (\n !serverConfig?.default_column_field &&\n serverConfig?.searchConfig?.default_column_field &&\n serverConfig?.searchConfig?.default_column_field?.length > 0\n ) {\n serverConfig.default_column_field = serverConfig.searchConfig.default_column_field;\n }\n if (!enable_btn && serverConfig) {\n delete serverConfig['btn_list'];\n delete serverConfig['head_btn_list'];\n delete serverConfig['batch_update_list'];\n }\n\n Object.assign(mergedConfig, serverConfig);\n let overrideConfig = null;\n if (defaultAndServerConfig) {\n overrideConfig = defaultAndServerConfig.override;\n if (pageConfigStore && overrideConfig) {\n pageConfigStore.setOverrideConfig(modalType, overrideConfig);\n }\n } else {\n overrideConfig = pageConfigStore && pageConfigStore.getOverrideConfig(modalType);\n }\n if (overrideConfig) {\n overrideData(mergedConfig, overrideConfig);\n }\n if (components) {\n mergeData(mergedConfig, components);\n if (components?.default_column_field && components?.default_column_field?.length > 0) {\n mergedConfig.default_column_field = components?.default_column_field;\n } else if (\n components?.searchConfig?.default_column_field &&\n components?.searchConfig?.default_column_field?.length > 0\n ) {\n mergedConfig.default_column_field = components?.searchConfig?.default_column_field;\n }\n }\n if (pageConfigStore) {\n pageConfigStore.setMergedConfig(modalType, mergedConfig);\n }\n if (mergedConfig.is_stripe) {\n const processData = raw_data_list => {\n let index = 0;\n const obj_dict = {};\n raw_data_list.forEach(item => {\n item.color_index0 = 1;\n if (obj_dict?.[item?.[mergedConfig.is_stripe]] == undefined) {\n obj_dict[item[mergedConfig.is_stripe]] = index;\n index += 1;\n item.color_index0 = 0;\n }\n item.color_index = obj_dict[item[mergedConfig.is_stripe]];\n });\n return raw_data_list;\n };\n\n const customRow = record => {\n if (record.color_index0 == 1) {\n return { style: { background: 'rgba(85,162,235,0.3)' } };\n }\n if (record.color_index % 2 == 0) {\n return { style: { background: '#FFFFFE' } };\n } else {\n return { style: { background: '#FAFAFA' } };\n }\n };\n mergedConfig.processData = processData;\n mergedConfig.customRow = customRow;\n }\n processData(mergedConfig);\n\n let result = mergedConfig;\n if (to_i18n) {\n result = modify_by_i18n_config(mergedConfig, t, modalType);\n }\n if (pageConfigStore) {\n pageConfigStore.setCachedConfig(modalType, result);\n }\n return result;\n};\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139],"mappings":"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CD;GACE,OAAO;GACP,WAAW;GACX,UAAU;GACV,SAAS;GACT,eAAe;GACf,WAAW;GACZ;EACD;GACE,OAAO;GACP,WAAW;GACX,UAAU;GACV,SAAS;GACT,eAAe;GACf,YAAY;IACV,IAAM;IACN,IAAM;IACN,IAAM;IACN,IAAM;IACP;GACD,UAAU;IACR,IAAM;IACN,IAAM;IACN,IAAM;IACN,IAAM;IACP;GACF;EAED;GACE,OAAO;GACP,WAAW;GACX,OAAO;GACP,SAAS;GACT,WAAW;GACX,eAAe;GACf,OAAO;GACP,OAAO;GACR;EACD;GACE,OAAO;GACP,WAAW;GACX,UAAU;GACV,SAAS;GACT,eAAe;GACf,kBAAkB;GACnB;EACD;GACE,OAAO;GACP,OAAO;GACP,WAAW;GACX,SAAS;GACT,WAAW;GACX,eAAe;GACf,OAAO;GACP,OAAO;GACP,gBAAgB;GAChB,SAAS,CACP;IAAE,MAAM;IAAM,OAAO;IAAQ,EAC7B;IAAE,MAAM;IAAM,OAAO;IAAS,CAC/B;GACF;EACD;GACE,OAAO;GACP,WAAW;GACX,OAAO;GACP,SAAS;GACT,eAAe;GAChB;EACD;GACE,OAAO;GACP,WAAW;GACX,SAAS;GACT,eAAe;GACf,WAAW;GACZ;EACD;GACE,OAAO;GACP,OAAO;GACP,WAAW;GACX,SAAS;GACT,eAAe;GACf,OAAO;GACR;EACF;AAuBD,QAtBI,EAAI,yBACN,EAAY,OAAO,GAAG,GAAG;EACvB,OAAO;EACP,WAAW;EACX,UAAU;EACV,SAAS;EACV,CAAC,EACF,EAAc,OAAO,KAAK;EACxB,MAAM;EACN,MAAM;EACN,OAAO;EACP,YAAY;EACZ,kBAAkB;EAClB,UAAU;EACV,YAAY;EACZ,cAAc;EACd,UAAU;EACV,UAAU;EACV,aAAa;EACb,SAAS;EACV,CAAC,GAEG;EACL,cAAc;EACd,WAAW;EACX;EACA;EACA;EACA,UAAA;EACA,eAAA;EACA,WAAW,GAAW;EACtB,mBAAmB;EACnB,uBAAuB;EACvB,wBAAwB;EACxB,4BAA4B;EAC5B,QAAQ;EACT;kDC3SH,YAoXS;CACL,aApXiC;EACjC;GACE,OAAO;GACP,WAAW;GACX,SAAS;GACT,OAAO;GACP,OAAO;GACR;EACD;GACE,OAAO;GACP,OAAO;GACP,WAAW;GACX,SAAS;GACT,UAAU;GACV,WAAW;GACZ;EACD;GACE,OAAO;GACP,OAAO;GACP,WAAW;GACX,SAAS;GACT,UAAU;GACV,WAAW;GACZ;EACD;GACE,gBAAgB;GAChB,eAAe;GACf,YAAY;IACV,QAAQ;IACR,OAAO;IACR;GACD,UAAU;IACR,QAAQ;IACR,OAAO;IACR;GACD,SAAS,CACP;IACE,OAAO;IACP,MAAM;IACP,EACD;IACE,OAAO;IACP,MAAM;IACP,CACF;GACD,OAAO;GACP,OAAO;GACP,WAAW;GACX,SAAS;GACT,UAAU;GACV,WAAW;GACX,kBAAkB;GACnB;EACD;GACE,OAAO;GACP,OAAO;GACP,WAAW;GACX,SAAS;GACT,UAAU;GACV,WAAW;GACZ;EACD;GACE,OAAO;GACP,OAAO;GACP,WAAW;GACX,SAAS;GACT,UAAU;GACV,WAAW;GACX,eAAe;GACf,kBAAkB;GACnB;EACD;GACE,gBAAgB;GAChB,eAAe;GACf,YAAY;IACV,MAAM;IACN,OAAO;IACR;GACD,UAAU;IACR,MAAM;IACN,OAAO;IACR;GACD,SAAS,CACP;IACE,OAAO;IACP,MAAM;IACP,EACD;IACE,OAAO;IACP,MAAM;IACP,CACF;GACD,OAAO;GACP,OAAO;GACP,WAAW;GACX,SAAS;GACT,UAAU;GACV,WAAW;GACX,kBAAkB;GACnB;EACD;GACE,aAAa;GACb,OAAO;GACP,OAAO;GACP,WAAW;GACX,SAAS;GACT,UAAU;GACV,WAAW;GACZ;EACD;GACE,aAAa;GACb,OAAO;GACP,OAAO;GACP,WAAW;GACX,SAAS;GACT,UAAU;GACV,WAAW;GACZ;EACF;CA+PC,iBA9PsB;EACtB,UAAU;GACR,YAAY;GACZ,QAAQ;GACR,KAAK,EAAE;GACR;EACD,kBAAkB,CAChB,EACE,UAAU;GACR;IACE,MAAM;IACN,MAAM;IACN,OAAO;IACP,UAAU;IACV,YAAY;IACZ,WAAW;IACX,WAAW;IACX,cAA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"}
|
|
1
|
+
{"version":3,"file":"remotePages-BTRkqR-c.js","names":["toPrimitive","_defineProperty","toPropertyKey","h","createTypes","noop","warning","LoadingOutlined","generate","canUseDom","contains","APPEND_ORDER","MARK_KEY","containerCache","getMark","getContainer","getOrder","findStyles","injectCSS","findExistNode","syncRealContainer","updateCSS","_objectSpread","_defineProperty","generateColor","_excluded","_objectWithoutProperties","_objectWithoutPropertiesLoose","_objectSpread","_defineProperty","_slicedToArray","_arrayWithHoles","_iterableToArrayLimit","_unsupportedIterableToArray","_nonIterableRest","_arrayLikeToArray","VueIcon","_objectSpread","_defineProperty","_createVNode","VueIcon","_objectSpread","_defineProperty","LoadingOutlined","_createVNode","AntdIcon","LoadingOutlinedSvg","CloseCircleFilled","_objectSpread","_defineProperty","_createVNode","AntdIcon","CloseCircleFilledSvg","CheckCircleFilled","_objectSpread","_defineProperty","_createVNode","AntdIcon","CheckCircleFilledSvg","ExclamationCircleFilled","_objectSpread","_defineProperty","_createVNode","AntdIcon","ExclamationCircleFilledSvg","CacheEntity","useHMR","getContainer","hash","useGlobalCache","hash","linter","normalizeStyle","contentQuotesLinter","hashedAnimationLinter","unitless","hash","version","getAlphaColor","generate","getAlphaColor","genFontSizes","generate","__rest","mergeToken","defaultDerivative","defaultSeedToken","version","locale","locale","CalendarLocale","TimePickerLocale","enUS","defaultLocaleData","LocaleReceiver","Empty","_createVNode","_createVNode","mergeToken","__rest","useConfigInject","useStyle","DefaultEmptyImg","_createVNode","LocaleReceiver","_objectSpread","SimpleEmptyImg","useConfigInject","_createVNode","Empty","getMotion","_createVNode","CloseOutlined","_objectSpread","_defineProperty","CloseOutlined","_createVNode","AntdIcon","CloseOutlinedSvg","CheckCircleOutlined","_objectSpread","_defineProperty","_createVNode","AntdIcon","CheckCircleOutlinedSvg","ExclamationCircleOutlined","_objectSpread","_defineProperty","ExclamationCircleOutlined","_createVNode","AntdIcon","ExclamationCircleOutlinedSvg","InfoCircleOutlined","_objectSpread","_defineProperty","_createVNode","AntdIcon","InfoCircleOutlinedSvg","CloseCircleOutlined","_objectSpread","_defineProperty","CloseCircleOutlined","_createVNode","AntdIcon","CloseCircleOutlinedSvg","InfoCircleFilled","_createVNode","AntdIcon","InfoCircleFilledSvg","defaultLocale","locale","_createVNode","_objectSpread","__rest","seed","now","getUuid","Notification","_createVNode","Notice","_objectSpread","_createVNode","Notice","_objectSpread","Portal","__rest","defaultGetContainer","useNotification","_createVNode","HookNotification","Notification","Keyframes","mergeToken","TypeIcon","_createVNode","LoadingOutlined","PureContent","useStyle","Notice","_objectSpread","__rest","DEFAULT_OFFSET","DEFAULT_DURATION","Holder","useConfigInject","useStyle","getMotion","_createVNode","CloseOutlined","useVcNotification","PureContent","_objectSpread","defaultDuration","defaultTop","maxCount","rtl","typeToIcon","LoadingOutlined","notice","_createVNode","api","Keyframes","Keyframes","mergeToken","_createVNode","CloseOutlined","LoadingOutlined","typeToIcon","useConfigInject","useStyle","Notice","_objectSpread","__rest","useConfigInject","useStyle","useVcNotification","_createVNode","_objectSpread","defaultPrefixCls","_createVNode","CloseOutlined","CloseCircleOutlined","ExclamationCircleOutlined","generate","defaultRenderEmpty","defaultSeedToken","defaultLocale","_createVNode","LocaleProvider","LocaleReceiver"],"sources":["../node_modules/@babel/runtime/helpers/esm/typeof.js","../node_modules/@babel/runtime/helpers/esm/toPrimitive.js","../node_modules/@babel/runtime/helpers/esm/toPropertyKey.js","../node_modules/@babel/runtime/helpers/esm/defineProperty.js","../node_modules/@babel/runtime/helpers/esm/objectSpread2.js","../node_modules/vue-types/dist/vue-types.m.js","../node_modules/ant-design-vue/es/_util/vue-types/index.js","../node_modules/ant-design-vue/es/_util/warning.js","../node_modules/@ant-design/icons-svg/es/asn/LoadingOutlined.js","../node_modules/@ctrl/tinycolor/dist/module/util.js","../node_modules/@ctrl/tinycolor/dist/module/conversion.js","../node_modules/@ctrl/tinycolor/dist/module/css-color-names.js","../node_modules/@ctrl/tinycolor/dist/module/format-input.js","../node_modules/@ctrl/tinycolor/dist/module/index.js","../node_modules/@ant-design/colors/dist/index.esm.js","../node_modules/@ant-design/icons-vue/es/components/Context.js","../node_modules/@ant-design/icons-vue/es/dynamicCSS.js","../node_modules/@ant-design/icons-vue/es/utils.js","../node_modules/@ant-design/icons-vue/es/components/IconBase.js","../node_modules/@ant-design/icons-vue/es/components/twoTonePrimaryColor.js","../node_modules/@ant-design/icons-vue/es/components/InsertStyle.js","../node_modules/@ant-design/icons-vue/es/components/AntdIcon.js","../node_modules/@ant-design/icons-vue/es/icons/LoadingOutlined.js","../node_modules/@ant-design/icons-svg/es/asn/CloseCircleFilled.js","../node_modules/@ant-design/icons-vue/es/icons/CloseCircleFilled.js","../node_modules/@ant-design/icons-svg/es/asn/CheckCircleFilled.js","../node_modules/@ant-design/icons-vue/es/icons/CheckCircleFilled.js","../node_modules/@ant-design/icons-svg/es/asn/ExclamationCircleFilled.js","../node_modules/@ant-design/icons-vue/es/icons/ExclamationCircleFilled.js","../node_modules/@emotion/hash/dist/emotion-hash.esm.js","../node_modules/ant-design-vue/es/_util/cssinjs/Cache.js","../node_modules/ant-design-vue/es/_util/type.js","../node_modules/ant-design-vue/es/_util/cssinjs/StyleContext.js","../node_modules/ant-design-vue/es/_util/cssinjs/hooks/useHMR.js","../node_modules/ant-design-vue/es/_util/cssinjs/hooks/useGlobalCache.js","../node_modules/ant-design-vue/es/_util/canUseDom.js","../node_modules/ant-design-vue/es/vc-util/Dom/contains.js","../node_modules/ant-design-vue/es/vc-util/Dom/dynamicCSS.js","../node_modules/ant-design-vue/es/_util/cssinjs/theme/ThemeCache.js","../node_modules/ant-design-vue/es/_util/cssinjs/theme/Theme.js","../node_modules/ant-design-vue/es/_util/cssinjs/theme/createTheme.js","../node_modules/ant-design-vue/es/_util/cssinjs/util.js","../node_modules/ant-design-vue/es/_util/cssinjs/hooks/useCacheToken.js","../node_modules/@emotion/unitless/dist/emotion-unitless.esm.js","../node_modules/stylis/src/Enum.js","../node_modules/stylis/src/Utility.js","../node_modules/stylis/src/Tokenizer.js","../node_modules/stylis/src/Parser.js","../node_modules/stylis/src/Serializer.js","../node_modules/ant-design-vue/es/_util/cssinjs/linters/utils.js","../node_modules/ant-design-vue/es/_util/cssinjs/linters/contentQuotesLinter.js","../node_modules/ant-design-vue/es/_util/cssinjs/linters/hashedAnimationLinter.js","../node_modules/ant-design-vue/es/_util/cssinjs/hooks/useStyleRegister/cacheMapUtil.js","../node_modules/ant-design-vue/es/_util/cssinjs/hooks/useStyleRegister/index.js","../node_modules/ant-design-vue/es/_util/cssinjs/Keyframes.js","../node_modules/ant-design-vue/es/version/version.js","../node_modules/ant-design-vue/es/version/index.js","../node_modules/ant-design-vue/es/theme/themes/shared/genControlHeight.js","../node_modules/ant-design-vue/es/theme/themes/shared/genSizeMapToken.js","../node_modules/ant-design-vue/es/theme/themes/seed.js","../node_modules/ant-design-vue/es/theme/themes/shared/genColorMapToken.js","../node_modules/ant-design-vue/es/theme/themes/shared/genRadius.js","../node_modules/ant-design-vue/es/theme/themes/shared/genCommonMapToken.js","../node_modules/ant-design-vue/es/theme/themes/default/colorAlgorithm.js","../node_modules/ant-design-vue/es/theme/themes/default/colors.js","../node_modules/ant-design-vue/es/theme/themes/shared/genFontSizes.js","../node_modules/ant-design-vue/es/theme/themes/shared/genFontMapToken.js","../node_modules/ant-design-vue/es/theme/themes/default/index.js","../node_modules/ant-design-vue/es/theme/util/getAlphaColor.js","../node_modules/ant-design-vue/es/theme/util/alias.js","../node_modules/ant-design-vue/es/style/index.js","../node_modules/ant-design-vue/es/config-provider/context.js","../node_modules/ant-design-vue/es/theme/util/genComponentStyleHook.js","../node_modules/ant-design-vue/es/theme/util/statistic.js","../node_modules/ant-design-vue/es/theme/internal.js","../node_modules/ant-design-vue/es/config-provider/DisabledContext.js","../node_modules/ant-design-vue/es/vc-pagination/locale/en_US.js","../node_modules/ant-design-vue/es/vc-picker/locale/en_US.js","../node_modules/ant-design-vue/es/time-picker/locale/en_US.js","../node_modules/ant-design-vue/es/date-picker/locale/en_US.js","../node_modules/ant-design-vue/es/calendar/locale/en_US.js","../node_modules/ant-design-vue/es/locale/en_US.js","../node_modules/ant-design-vue/es/locale/LocaleReceiver.js","../node_modules/ant-design-vue/es/locale-provider/LocaleReceiver.js","../node_modules/ant-design-vue/es/empty/empty.js","../node_modules/ant-design-vue/es/empty/simple.js","../node_modules/ant-design-vue/es/empty/style/index.js","../node_modules/ant-design-vue/es/empty/index.js","../node_modules/ant-design-vue/es/config-provider/renderEmpty.js","../node_modules/ant-design-vue/es/config-provider/SizeContext.js","../node_modules/ant-design-vue/es/config-provider/hooks/useConfigInject.js","../node_modules/ant-design-vue/es/vc-trigger/utils/motionUtil.js","../node_modules/ant-design-vue/es/_util/transition.js","../node_modules/ant-design-vue/es/vc-trigger/context.js","../node_modules/ant-design-vue/es/_util/Portal.js","../src/components/remotePages/configs/permission/permission-apiurl-2.ts","../src/api/permission/apiurl-manage.ts","../src/components/remotePages/configs/permission/permission-apiurl-config.ts","../src/components/remotePages/configs/permission/permission-apiurl.ts","../src/components/remotePages/configs/permission/permission-ding_appinfo.ts","../src/components/remotePages/configs/permission/permission-menu-config.ts","../src/components/remotePages/configs/permission/permission-menu.ts","../src/components/remotePages/configs/permission/permission-menu_helper.ts","../src/api/permission/user-manage.ts","../src/components/remotePages/configs/permission/permission-organization-config.ts","../src/components/remotePages/configs/permission/permission-organization.ts","../node_modules/@ant-design/icons-svg/es/asn/CloseOutlined.js","../node_modules/@ant-design/icons-vue/es/icons/CloseOutlined.js","../node_modules/@ant-design/icons-svg/es/asn/CheckCircleOutlined.js","../node_modules/@ant-design/icons-vue/es/icons/CheckCircleOutlined.js","../node_modules/@ant-design/icons-svg/es/asn/ExclamationCircleOutlined.js","../node_modules/@ant-design/icons-vue/es/icons/ExclamationCircleOutlined.js","../node_modules/@ant-design/icons-svg/es/asn/InfoCircleOutlined.js","../node_modules/@ant-design/icons-vue/es/icons/InfoCircleOutlined.js","../node_modules/@ant-design/icons-svg/es/asn/CloseCircleOutlined.js","../node_modules/@ant-design/icons-vue/es/icons/CloseCircleOutlined.js","../node_modules/@ant-design/icons-svg/es/asn/InfoCircleFilled.js","../node_modules/@ant-design/icons-vue/es/icons/InfoCircleFilled.js","../node_modules/ant-design-vue/es/modal/locale.js","../node_modules/ant-design-vue/es/locale/index.js","../node_modules/ant-design-vue/es/locale-provider/index.js","../node_modules/ant-design-vue/es/vc-notification/Notice.js","../node_modules/ant-design-vue/es/vc-notification/Notification.js","../node_modules/ant-design-vue/es/vc-notification/HookNotification.js","../node_modules/ant-design-vue/es/vc-notification/useNotification.js","../node_modules/ant-design-vue/es/vc-notification/index.js","../node_modules/ant-design-vue/es/message/style/index.js","../node_modules/ant-design-vue/es/message/PurePanel.js","../node_modules/ant-design-vue/es/message/useMessage.js","../node_modules/ant-design-vue/es/message/index.js","../node_modules/ant-design-vue/es/notification/style/placement.js","../node_modules/ant-design-vue/es/notification/style/index.js","../node_modules/ant-design-vue/es/notification/PurePanel.js","../node_modules/ant-design-vue/es/notification/util.js","../node_modules/ant-design-vue/es/notification/useNotification.js","../node_modules/ant-design-vue/es/notification/index.js","../node_modules/ant-design-vue/es/config-provider/cssVariables.js","../node_modules/ant-design-vue/es/config-provider/style/index.js","../node_modules/ant-design-vue/es/config-provider/hooks/useTheme.js","../node_modules/ant-design-vue/es/config-provider/index.js","../src/api/permission/auth-manage.ts","../src/components/remotePages/configs/permission/permission-role-config.ts","../src/components/remotePages/configs/permission/permission-role-manage-config.ts","../src/components/remotePages/configs/permission/permission-role.ts","../src/components/remotePages/configs/permission/permission-user-config.ts","../src/components/remotePages/configs/permission/permission-user.ts","../src/components/remotePages/configs/permission/role-manage.ts","../src/components/remotePages/i18n_config.ts","../src/components/remotePages/index.ts"],"sourcesContent":["export default function _typeof(obj) {\n \"@babel/helpers - typeof\";\n\n return _typeof = \"function\" == typeof Symbol && \"symbol\" == typeof Symbol.iterator ? function (obj) {\n return typeof obj;\n } : function (obj) {\n return obj && \"function\" == typeof Symbol && obj.constructor === Symbol && obj !== Symbol.prototype ? \"symbol\" : typeof obj;\n }, _typeof(obj);\n}","import _typeof from \"./typeof.js\";\nexport default function _toPrimitive(input, hint) {\n if (_typeof(input) !== \"object\" || input === null) return input;\n var prim = input[Symbol.toPrimitive];\n if (prim !== undefined) {\n var res = prim.call(input, hint || \"default\");\n if (_typeof(res) !== \"object\") return res;\n throw new TypeError(\"@@toPrimitive must return a primitive value.\");\n }\n return (hint === \"string\" ? String : Number)(input);\n}","import _typeof from \"./typeof.js\";\nimport toPrimitive from \"./toPrimitive.js\";\nexport default function _toPropertyKey(arg) {\n var key = toPrimitive(arg, \"string\");\n return _typeof(key) === \"symbol\" ? key : String(key);\n}","import toPropertyKey from \"./toPropertyKey.js\";\nexport default function _defineProperty(obj, key, value) {\n key = toPropertyKey(key);\n if (key in obj) {\n Object.defineProperty(obj, key, {\n value: value,\n enumerable: true,\n configurable: true,\n writable: true\n });\n } else {\n obj[key] = value;\n }\n return obj;\n}","import defineProperty from \"./defineProperty.js\";\nfunction ownKeys(object, enumerableOnly) {\n var keys = Object.keys(object);\n if (Object.getOwnPropertySymbols) {\n var symbols = Object.getOwnPropertySymbols(object);\n enumerableOnly && (symbols = symbols.filter(function (sym) {\n return Object.getOwnPropertyDescriptor(object, sym).enumerable;\n })), keys.push.apply(keys, symbols);\n }\n return keys;\n}\nexport default function _objectSpread2(target) {\n for (var i = 1; i < arguments.length; i++) {\n var source = null != arguments[i] ? arguments[i] : {};\n i % 2 ? ownKeys(Object(source), !0).forEach(function (key) {\n defineProperty(target, key, source[key]);\n }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) {\n Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key));\n });\n }\n return target;\n}","function e(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)}}function t(t,n,r){return n&&e(t.prototype,n),r&&e(t,r),t}function n(){return(n=Object.assign||function(e){for(var t=1;t<arguments.length;t++){var n=arguments[t];for(var r in n)Object.prototype.hasOwnProperty.call(n,r)&&(e[r]=n[r])}return e}).apply(this,arguments)}function r(e,t){e.prototype=Object.create(t.prototype),e.prototype.constructor=e,e.__proto__=t}function i(e,t){if(null==e)return{};var n,r,i={},o=Object.keys(e);for(r=0;r<o.length;r++)t.indexOf(n=o[r])>=0||(i[n]=e[n]);return i}function o(e){return 1==(null!=(t=e)&&\"object\"==typeof t&&!1===Array.isArray(t))&&\"[object Object]\"===Object.prototype.toString.call(e);var t}var u=Object.prototype,a=u.toString,f=u.hasOwnProperty,c=/^\\s*function (\\w+)/;function l(e){var t,n=null!==(t=null==e?void 0:e.type)&&void 0!==t?t:e;if(n){var r=n.toString().match(c);return r?r[1]:\"\"}return\"\"}var s=function(e){var t,n;return!1!==o(e)&&\"function\"==typeof(t=e.constructor)&&!1!==o(n=t.prototype)&&!1!==n.hasOwnProperty(\"isPrototypeOf\")},v=function(e){return e},y=v;if(\"production\"!==process.env.NODE_ENV){var p=\"undefined\"!=typeof console;y=p?function(e){console.warn(\"[VueTypes warn]: \"+e)}:v}var d=function(e,t){return f.call(e,t)},h=Number.isInteger||function(e){return\"number\"==typeof e&&isFinite(e)&&Math.floor(e)===e},b=Array.isArray||function(e){return\"[object Array]\"===a.call(e)},O=function(e){return\"[object Function]\"===a.call(e)},g=function(e){return s(e)&&d(e,\"_vueTypes_name\")},m=function(e){return s(e)&&(d(e,\"type\")||[\"_vueTypes_name\",\"validator\",\"default\",\"required\"].some(function(t){return d(e,t)}))};function j(e,t){return Object.defineProperty(e.bind(t),\"__original\",{value:e})}function _(e,t,n){var r;void 0===n&&(n=!1);var i=!0,o=\"\";r=s(e)?e:{type:e};var u=g(r)?r._vueTypes_name+\" - \":\"\";if(m(r)&&null!==r.type){if(void 0===r.type||!0===r.type)return i;if(!r.required&&void 0===t)return i;b(r.type)?(i=r.type.some(function(e){return!0===_(e,t,!0)}),o=r.type.map(function(e){return l(e)}).join(\" or \")):i=\"Array\"===(o=l(r))?b(t):\"Object\"===o?s(t):\"String\"===o||\"Number\"===o||\"Boolean\"===o||\"Function\"===o?function(e){if(null==e)return\"\";var t=e.constructor.toString().match(c);return t?t[1]:\"\"}(t)===o:t instanceof r.type}if(!i){var a=u+'value \"'+t+'\" should be of type \"'+o+'\"';return!1===n?(y(a),!1):a}if(d(r,\"validator\")&&O(r.validator)){var f=y,v=[];if(y=function(e){v.push(e)},i=r.validator(t),y=f,!i){var p=(v.length>1?\"* \":\"\")+v.join(\"\\n* \");return v.length=0,!1===n?(y(p),i):p}}return i}function T(e,t){var n=Object.defineProperties(t,{_vueTypes_name:{value:e,writable:!0},isRequired:{get:function(){return this.required=!0,this}},def:{value:function(e){return void 0!==e||this.default?O(e)||!0===_(this,e,!0)?(this.default=b(e)?function(){return[].concat(e)}:s(e)?function(){return Object.assign({},e)}:e,this):(y(this._vueTypes_name+' - invalid default value: \"'+e+'\"'),this):this}}}),r=n.validator;return O(r)&&(n.validator=j(r,n)),n}function w(e,t){var n=T(e,t);return Object.defineProperty(n,\"validate\",{value:function(e){return O(this.validator)&&y(this._vueTypes_name+\" - calling .validate() will overwrite the current custom validator function. Validator info:\\n\"+JSON.stringify(this)),this.validator=j(e,this),this}})}function k(e,t,n){var r,o,u=(r=t,o={},Object.getOwnPropertyNames(r).forEach(function(e){o[e]=Object.getOwnPropertyDescriptor(r,e)}),Object.defineProperties({},o));if(u._vueTypes_name=e,!s(n))return u;var a,f,c=n.validator,l=i(n,[\"validator\"]);if(O(c)){var v=u.validator;v&&(v=null!==(f=(a=v).__original)&&void 0!==f?f:a),u.validator=j(v?function(e){return v.call(this,e)&&c.call(this,e)}:c,u)}return Object.assign(u,l)}function P(e){return e.replace(/^(?!\\s*$)/gm,\" \")}var x=function(){return w(\"any\",{})},A=function(){return w(\"function\",{type:Function})},E=function(){return w(\"boolean\",{type:Boolean})},N=function(){return w(\"string\",{type:String})},q=function(){return w(\"number\",{type:Number})},S=function(){return w(\"array\",{type:Array})},V=function(){return w(\"object\",{type:Object})},F=function(){return T(\"integer\",{type:Number,validator:function(e){return h(e)}})},D=function(){return T(\"symbol\",{validator:function(e){return\"symbol\"==typeof e}})};function L(e,t){if(void 0===t&&(t=\"custom validation failed\"),\"function\"!=typeof e)throw new TypeError(\"[VueTypes error]: You must provide a function as argument\");return T(e.name||\"<<anonymous function>>\",{validator:function(n){var r=e(n);return r||y(this._vueTypes_name+\" - \"+t),r}})}function Y(e){if(!b(e))throw new TypeError(\"[VueTypes error]: You must provide an array as argument.\");var t='oneOf - value should be one of \"'+e.join('\", \"')+'\".',n=e.reduce(function(e,t){if(null!=t){var n=t.constructor;-1===e.indexOf(n)&&e.push(n)}return e},[]);return T(\"oneOf\",{type:n.length>0?n:void 0,validator:function(n){var r=-1!==e.indexOf(n);return r||y(t),r}})}function B(e){if(!b(e))throw new TypeError(\"[VueTypes error]: You must provide an array as argument\");for(var t=!1,n=[],r=0;r<e.length;r+=1){var i=e[r];if(m(i)){if(g(i)&&\"oneOf\"===i._vueTypes_name){n=n.concat(i.type);continue}if(O(i.validator)&&(t=!0),!0!==i.type&&i.type){n=n.concat(i.type);continue}}n.push(i)}return n=n.filter(function(e,t){return n.indexOf(e)===t}),T(\"oneOfType\",t?{type:n,validator:function(t){var n=[],r=e.some(function(e){var r=_(g(e)&&\"oneOf\"===e._vueTypes_name?e.type||null:e,t,!0);return\"string\"==typeof r&&n.push(r),!0===r});return r||y(\"oneOfType - provided value does not match any of the \"+n.length+\" passed-in validators:\\n\"+P(n.join(\"\\n\"))),r}}:{type:n})}function I(e){return T(\"arrayOf\",{type:Array,validator:function(t){var n,r=t.every(function(t){return!0===(n=_(e,t,!0))});return r||y(\"arrayOf - value validation error:\\n\"+P(n)),r}})}function J(e){return T(\"instanceOf\",{type:e})}function M(e){return T(\"objectOf\",{type:Object,validator:function(t){var n,r=Object.keys(t).every(function(r){return!0===(n=_(e,t[r],!0))});return r||y(\"objectOf - value validation error:\\n\"+P(n)),r}})}function R(e){var t=Object.keys(e),n=t.filter(function(t){var n;return!!(null===(n=e[t])||void 0===n?void 0:n.required)}),r=T(\"shape\",{type:Object,validator:function(r){var i=this;if(!s(r))return!1;var o=Object.keys(r);if(n.length>0&&n.some(function(e){return-1===o.indexOf(e)})){var u=n.filter(function(e){return-1===o.indexOf(e)});return y(1===u.length?'shape - required property \"'+u[0]+'\" is not defined.':'shape - required properties \"'+u.join('\", \"')+'\" are not defined.'),!1}return o.every(function(n){if(-1===t.indexOf(n))return!0===i._vueTypes_isLoose||(y('shape - shape definition does not include a \"'+n+'\" property. Allowed keys: \"'+t.join('\", \"')+'\".'),!1);var o=_(e[n],r[n],!0);return\"string\"==typeof o&&y('shape - \"'+n+'\" property validation error:\\n '+P(o)),!0===o})}});return Object.defineProperty(r,\"_vueTypes_isLoose\",{writable:!0,value:!1}),Object.defineProperty(r,\"loose\",{get:function(){return this._vueTypes_isLoose=!0,this}}),r}var $=function(){function e(){}return e.extend=function(e){var t=this;if(b(e))return e.forEach(function(e){return t.extend(e)}),this;var n=e.name,r=e.validate,o=void 0!==r&&r,u=e.getter,a=void 0!==u&&u,f=i(e,[\"name\",\"validate\",\"getter\"]);if(d(this,n))throw new TypeError('[VueTypes error]: Type \"'+n+'\" already defined');var c,l=f.type;return g(l)?(delete f.type,Object.defineProperty(this,n,a?{get:function(){return k(n,l,f)}}:{value:function(){var e,t=k(n,l,f);return t.validator&&(t.validator=(e=t.validator).bind.apply(e,[t].concat([].slice.call(arguments)))),t}})):(c=a?{get:function(){var e=Object.assign({},f);return o?w(n,e):T(n,e)},enumerable:!0}:{value:function(){var e,t,r=Object.assign({},f);return e=o?w(n,r):T(n,r),r.validator&&(e.validator=(t=r.validator).bind.apply(t,[e].concat([].slice.call(arguments)))),e},enumerable:!0},Object.defineProperty(this,n,c))},t(e,null,[{key:\"any\",get:function(){return x()}},{key:\"func\",get:function(){return A().def(this.defaults.func)}},{key:\"bool\",get:function(){return E().def(this.defaults.bool)}},{key:\"string\",get:function(){return N().def(this.defaults.string)}},{key:\"number\",get:function(){return q().def(this.defaults.number)}},{key:\"array\",get:function(){return S().def(this.defaults.array)}},{key:\"object\",get:function(){return V().def(this.defaults.object)}},{key:\"integer\",get:function(){return F().def(this.defaults.integer)}},{key:\"symbol\",get:function(){return D()}}]),e}();function z(e){var i;return void 0===e&&(e={func:function(){},bool:!0,string:\"\",number:0,array:function(){return[]},object:function(){return{}},integer:0}),(i=function(i){function o(){return i.apply(this,arguments)||this}return r(o,i),t(o,null,[{key:\"sensibleDefaults\",get:function(){return n({},this.defaults)},set:function(t){this.defaults=!1!==t?n({},!0!==t?t:e):{}}}]),o}($)).defaults=n({},e),i}$.defaults={},$.custom=L,$.oneOf=Y,$.instanceOf=J,$.oneOfType=B,$.arrayOf=I,$.objectOf=M,$.shape=R,$.utils={validate:function(e,t){return!0===_(t,e,!0)},toType:function(e,t,n){return void 0===n&&(n=!1),n?w(e,t):T(e,t)}};var C=function(e){function t(){return e.apply(this,arguments)||this}return r(t,e),t}(z());export default C;export{x as any,S as array,I as arrayOf,E as bool,z as createTypes,L as custom,k as fromType,A as func,J as instanceOf,F as integer,q as number,V as object,M as objectOf,Y as oneOf,B as oneOfType,R as shape,N as string,D as symbol,T as toType,w as toValidableType,_ as validateType};\n//# sourceMappingURL=vue-types.m.js.map\n","import { createTypes } from 'vue-types';\nconst PropTypes = createTypes({\n func: undefined,\n bool: undefined,\n string: undefined,\n number: undefined,\n array: undefined,\n object: undefined,\n integer: undefined\n});\nPropTypes.extend([{\n name: 'looseBool',\n getter: true,\n type: Boolean,\n default: undefined\n}, {\n name: 'style',\n getter: true,\n type: [String, Object],\n default: undefined\n}, {\n name: 'VueNode',\n getter: true,\n type: null\n}]);\nexport function withUndefined(type) {\n type.default = undefined;\n return type;\n}\nexport default PropTypes;","import vcWarning, { resetWarned } from '../vc-util/warning';\nexport { resetWarned };\nexport function noop() {}\n// eslint-disable-next-line import/no-mutable-exports\nlet warning = noop;\nif (process.env.NODE_ENV !== 'production') {\n warning = (valid, component, message) => {\n vcWarning(valid, `[ant-design-vue: ${component}] ${message}`);\n // StrictMode will inject console which will not throw warning in React 17.\n if (process.env.NODE_ENV === 'test') {\n resetWarned();\n }\n };\n}\nexport default warning;","// This icon file is generated automatically.\nvar LoadingOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"0 0 1024 1024\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M988 548c-19.9 0-36-16.1-36-36 0-59.4-11.6-117-34.6-171.3a440.45 440.45 0 00-94.3-139.9 437.71 437.71 0 00-139.9-94.3C629 83.6 571.4 72 512 72c-19.9 0-36-16.1-36-36s16.1-36 36-36c69.1 0 136.2 13.5 199.3 40.3C772.3 66 827 103 874 150c47 47 83.9 101.8 109.7 162.7 26.7 63.1 40.2 130.2 40.2 199.3.1 19.9-16 36-35.9 36z\" } }] }, \"name\": \"loading\", \"theme\": \"outlined\" };\nexport default LoadingOutlined;\n","/**\n * Take input from [0, n] and return it as [0, 1]\n * @hidden\n */\nexport function bound01(n, max) {\n if (isOnePointZero(n)) {\n n = '100%';\n }\n var isPercent = isPercentage(n);\n n = max === 360 ? n : Math.min(max, Math.max(0, parseFloat(n)));\n // Automatically convert percentage into number\n if (isPercent) {\n n = parseInt(String(n * max), 10) / 100;\n }\n // Handle floating point rounding errors\n if (Math.abs(n - max) < 0.000001) {\n return 1;\n }\n // Convert into [0, 1] range if it isn't already\n if (max === 360) {\n // If n is a hue given in degrees,\n // wrap around out-of-range values into [0, 360] range\n // then convert into [0, 1].\n n = (n < 0 ? (n % max) + max : n % max) / parseFloat(String(max));\n }\n else {\n // If n not a hue given in degrees\n // Convert into [0, 1] range if it isn't already.\n n = (n % max) / parseFloat(String(max));\n }\n return n;\n}\n/**\n * Force a number between 0 and 1\n * @hidden\n */\nexport function clamp01(val) {\n return Math.min(1, Math.max(0, val));\n}\n/**\n * Need to handle 1.0 as 100%, since once it is a number, there is no difference between it and 1\n * <http://stackoverflow.com/questions/7422072/javascript-how-to-detect-number-as-a-decimal-including-1-0>\n * @hidden\n */\nexport function isOnePointZero(n) {\n return typeof n === 'string' && n.indexOf('.') !== -1 && parseFloat(n) === 1;\n}\n/**\n * Check to see if string passed in is a percentage\n * @hidden\n */\nexport function isPercentage(n) {\n return typeof n === 'string' && n.indexOf('%') !== -1;\n}\n/**\n * Return a valid alpha value [0,1] with all invalid values being set to 1\n * @hidden\n */\nexport function boundAlpha(a) {\n a = parseFloat(a);\n if (isNaN(a) || a < 0 || a > 1) {\n a = 1;\n }\n return a;\n}\n/**\n * Replace a decimal with it's percentage value\n * @hidden\n */\nexport function convertToPercentage(n) {\n if (n <= 1) {\n return \"\".concat(Number(n) * 100, \"%\");\n }\n return n;\n}\n/**\n * Force a hex value to have 2 characters\n * @hidden\n */\nexport function pad2(c) {\n return c.length === 1 ? '0' + c : String(c);\n}\n","import { bound01, pad2 } from './util';\n// `rgbToHsl`, `rgbToHsv`, `hslToRgb`, `hsvToRgb` modified from:\n// <http://mjijackson.com/2008/02/rgb-to-hsl-and-rgb-to-hsv-color-model-conversion-algorithms-in-javascript>\n/**\n * Handle bounds / percentage checking to conform to CSS color spec\n * <http://www.w3.org/TR/css3-color/>\n * *Assumes:* r, g, b in [0, 255] or [0, 1]\n * *Returns:* { r, g, b } in [0, 255]\n */\nexport function rgbToRgb(r, g, b) {\n return {\n r: bound01(r, 255) * 255,\n g: bound01(g, 255) * 255,\n b: bound01(b, 255) * 255,\n };\n}\n/**\n * Converts an RGB color value to HSL.\n * *Assumes:* r, g, and b are contained in [0, 255] or [0, 1]\n * *Returns:* { h, s, l } in [0,1]\n */\nexport function rgbToHsl(r, g, b) {\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n var max = Math.max(r, g, b);\n var min = Math.min(r, g, b);\n var h = 0;\n var s = 0;\n var l = (max + min) / 2;\n if (max === min) {\n s = 0;\n h = 0; // achromatic\n }\n else {\n var d = max - min;\n s = l > 0.5 ? d / (2 - max - min) : d / (max + min);\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n default:\n break;\n }\n h /= 6;\n }\n return { h: h, s: s, l: l };\n}\nfunction hue2rgb(p, q, t) {\n if (t < 0) {\n t += 1;\n }\n if (t > 1) {\n t -= 1;\n }\n if (t < 1 / 6) {\n return p + (q - p) * (6 * t);\n }\n if (t < 1 / 2) {\n return q;\n }\n if (t < 2 / 3) {\n return p + (q - p) * (2 / 3 - t) * 6;\n }\n return p;\n}\n/**\n * Converts an HSL color value to RGB.\n *\n * *Assumes:* h is contained in [0, 1] or [0, 360] and s and l are contained [0, 1] or [0, 100]\n * *Returns:* { r, g, b } in the set [0, 255]\n */\nexport function hslToRgb(h, s, l) {\n var r;\n var g;\n var b;\n h = bound01(h, 360);\n s = bound01(s, 100);\n l = bound01(l, 100);\n if (s === 0) {\n // achromatic\n g = l;\n b = l;\n r = l;\n }\n else {\n var q = l < 0.5 ? l * (1 + s) : l + s - l * s;\n var p = 2 * l - q;\n r = hue2rgb(p, q, h + 1 / 3);\n g = hue2rgb(p, q, h);\n b = hue2rgb(p, q, h - 1 / 3);\n }\n return { r: r * 255, g: g * 255, b: b * 255 };\n}\n/**\n * Converts an RGB color value to HSV\n *\n * *Assumes:* r, g, and b are contained in the set [0, 255] or [0, 1]\n * *Returns:* { h, s, v } in [0,1]\n */\nexport function rgbToHsv(r, g, b) {\n r = bound01(r, 255);\n g = bound01(g, 255);\n b = bound01(b, 255);\n var max = Math.max(r, g, b);\n var min = Math.min(r, g, b);\n var h = 0;\n var v = max;\n var d = max - min;\n var s = max === 0 ? 0 : d / max;\n if (max === min) {\n h = 0; // achromatic\n }\n else {\n switch (max) {\n case r:\n h = (g - b) / d + (g < b ? 6 : 0);\n break;\n case g:\n h = (b - r) / d + 2;\n break;\n case b:\n h = (r - g) / d + 4;\n break;\n default:\n break;\n }\n h /= 6;\n }\n return { h: h, s: s, v: v };\n}\n/**\n * Converts an HSV color value to RGB.\n *\n * *Assumes:* h is contained in [0, 1] or [0, 360] and s and v are contained in [0, 1] or [0, 100]\n * *Returns:* { r, g, b } in the set [0, 255]\n */\nexport function hsvToRgb(h, s, v) {\n h = bound01(h, 360) * 6;\n s = bound01(s, 100);\n v = bound01(v, 100);\n var i = Math.floor(h);\n var f = h - i;\n var p = v * (1 - s);\n var q = v * (1 - f * s);\n var t = v * (1 - (1 - f) * s);\n var mod = i % 6;\n var r = [v, q, p, p, t, v][mod];\n var g = [t, v, v, q, p, p][mod];\n var b = [p, p, t, v, v, q][mod];\n return { r: r * 255, g: g * 255, b: b * 255 };\n}\n/**\n * Converts an RGB color to hex\n *\n * Assumes r, g, and b are contained in the set [0, 255]\n * Returns a 3 or 6 character hex\n */\nexport function rgbToHex(r, g, b, allow3Char) {\n var hex = [\n pad2(Math.round(r).toString(16)),\n pad2(Math.round(g).toString(16)),\n pad2(Math.round(b).toString(16)),\n ];\n // Return a 3 character hex if possible\n if (allow3Char &&\n hex[0].startsWith(hex[0].charAt(1)) &&\n hex[1].startsWith(hex[1].charAt(1)) &&\n hex[2].startsWith(hex[2].charAt(1))) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0);\n }\n return hex.join('');\n}\n/**\n * Converts an RGBA color plus alpha transparency to hex\n *\n * Assumes r, g, b are contained in the set [0, 255] and\n * a in [0, 1]. Returns a 4 or 8 character rgba hex\n */\n// eslint-disable-next-line max-params\nexport function rgbaToHex(r, g, b, a, allow4Char) {\n var hex = [\n pad2(Math.round(r).toString(16)),\n pad2(Math.round(g).toString(16)),\n pad2(Math.round(b).toString(16)),\n pad2(convertDecimalToHex(a)),\n ];\n // Return a 4 character hex if possible\n if (allow4Char &&\n hex[0].startsWith(hex[0].charAt(1)) &&\n hex[1].startsWith(hex[1].charAt(1)) &&\n hex[2].startsWith(hex[2].charAt(1)) &&\n hex[3].startsWith(hex[3].charAt(1))) {\n return hex[0].charAt(0) + hex[1].charAt(0) + hex[2].charAt(0) + hex[3].charAt(0);\n }\n return hex.join('');\n}\n/**\n * Converts an RGBA color to an ARGB Hex8 string\n * Rarely used, but required for \"toFilter()\"\n */\nexport function rgbaToArgbHex(r, g, b, a) {\n var hex = [\n pad2(convertDecimalToHex(a)),\n pad2(Math.round(r).toString(16)),\n pad2(Math.round(g).toString(16)),\n pad2(Math.round(b).toString(16)),\n ];\n return hex.join('');\n}\n/** Converts a decimal to a hex value */\nexport function convertDecimalToHex(d) {\n return Math.round(parseFloat(d) * 255).toString(16);\n}\n/** Converts a hex value to a decimal */\nexport function convertHexToDecimal(h) {\n return parseIntFromHex(h) / 255;\n}\n/** Parse a base-16 hex value into a base-10 integer */\nexport function parseIntFromHex(val) {\n return parseInt(val, 16);\n}\nexport function numberInputToObject(color) {\n return {\n r: color >> 16,\n g: (color & 0xff00) >> 8,\n b: color & 0xff,\n };\n}\n","// https://github.com/bahamas10/css-color-names/blob/master/css-color-names.json\n/**\n * @hidden\n */\nexport var names = {\n aliceblue: '#f0f8ff',\n antiquewhite: '#faebd7',\n aqua: '#00ffff',\n aquamarine: '#7fffd4',\n azure: '#f0ffff',\n beige: '#f5f5dc',\n bisque: '#ffe4c4',\n black: '#000000',\n blanchedalmond: '#ffebcd',\n blue: '#0000ff',\n blueviolet: '#8a2be2',\n brown: '#a52a2a',\n burlywood: '#deb887',\n cadetblue: '#5f9ea0',\n chartreuse: '#7fff00',\n chocolate: '#d2691e',\n coral: '#ff7f50',\n cornflowerblue: '#6495ed',\n cornsilk: '#fff8dc',\n crimson: '#dc143c',\n cyan: '#00ffff',\n darkblue: '#00008b',\n darkcyan: '#008b8b',\n darkgoldenrod: '#b8860b',\n darkgray: '#a9a9a9',\n darkgreen: '#006400',\n darkgrey: '#a9a9a9',\n darkkhaki: '#bdb76b',\n darkmagenta: '#8b008b',\n darkolivegreen: '#556b2f',\n darkorange: '#ff8c00',\n darkorchid: '#9932cc',\n darkred: '#8b0000',\n darksalmon: '#e9967a',\n darkseagreen: '#8fbc8f',\n darkslateblue: '#483d8b',\n darkslategray: '#2f4f4f',\n darkslategrey: '#2f4f4f',\n darkturquoise: '#00ced1',\n darkviolet: '#9400d3',\n deeppink: '#ff1493',\n deepskyblue: '#00bfff',\n dimgray: '#696969',\n dimgrey: '#696969',\n dodgerblue: '#1e90ff',\n firebrick: '#b22222',\n floralwhite: '#fffaf0',\n forestgreen: '#228b22',\n fuchsia: '#ff00ff',\n gainsboro: '#dcdcdc',\n ghostwhite: '#f8f8ff',\n goldenrod: '#daa520',\n gold: '#ffd700',\n gray: '#808080',\n green: '#008000',\n greenyellow: '#adff2f',\n grey: '#808080',\n honeydew: '#f0fff0',\n hotpink: '#ff69b4',\n indianred: '#cd5c5c',\n indigo: '#4b0082',\n ivory: '#fffff0',\n khaki: '#f0e68c',\n lavenderblush: '#fff0f5',\n lavender: '#e6e6fa',\n lawngreen: '#7cfc00',\n lemonchiffon: '#fffacd',\n lightblue: '#add8e6',\n lightcoral: '#f08080',\n lightcyan: '#e0ffff',\n lightgoldenrodyellow: '#fafad2',\n lightgray: '#d3d3d3',\n lightgreen: '#90ee90',\n lightgrey: '#d3d3d3',\n lightpink: '#ffb6c1',\n lightsalmon: '#ffa07a',\n lightseagreen: '#20b2aa',\n lightskyblue: '#87cefa',\n lightslategray: '#778899',\n lightslategrey: '#778899',\n lightsteelblue: '#b0c4de',\n lightyellow: '#ffffe0',\n lime: '#00ff00',\n limegreen: '#32cd32',\n linen: '#faf0e6',\n magenta: '#ff00ff',\n maroon: '#800000',\n mediumaquamarine: '#66cdaa',\n mediumblue: '#0000cd',\n mediumorchid: '#ba55d3',\n mediumpurple: '#9370db',\n mediumseagreen: '#3cb371',\n mediumslateblue: '#7b68ee',\n mediumspringgreen: '#00fa9a',\n mediumturquoise: '#48d1cc',\n mediumvioletred: '#c71585',\n midnightblue: '#191970',\n mintcream: '#f5fffa',\n mistyrose: '#ffe4e1',\n moccasin: '#ffe4b5',\n navajowhite: '#ffdead',\n navy: '#000080',\n oldlace: '#fdf5e6',\n olive: '#808000',\n olivedrab: '#6b8e23',\n orange: '#ffa500',\n orangered: '#ff4500',\n orchid: '#da70d6',\n palegoldenrod: '#eee8aa',\n palegreen: '#98fb98',\n paleturquoise: '#afeeee',\n palevioletred: '#db7093',\n papayawhip: '#ffefd5',\n peachpuff: '#ffdab9',\n peru: '#cd853f',\n pink: '#ffc0cb',\n plum: '#dda0dd',\n powderblue: '#b0e0e6',\n purple: '#800080',\n rebeccapurple: '#663399',\n red: '#ff0000',\n rosybrown: '#bc8f8f',\n royalblue: '#4169e1',\n saddlebrown: '#8b4513',\n salmon: '#fa8072',\n sandybrown: '#f4a460',\n seagreen: '#2e8b57',\n seashell: '#fff5ee',\n sienna: '#a0522d',\n silver: '#c0c0c0',\n skyblue: '#87ceeb',\n slateblue: '#6a5acd',\n slategray: '#708090',\n slategrey: '#708090',\n snow: '#fffafa',\n springgreen: '#00ff7f',\n steelblue: '#4682b4',\n tan: '#d2b48c',\n teal: '#008080',\n thistle: '#d8bfd8',\n tomato: '#ff6347',\n turquoise: '#40e0d0',\n violet: '#ee82ee',\n wheat: '#f5deb3',\n white: '#ffffff',\n whitesmoke: '#f5f5f5',\n yellow: '#ffff00',\n yellowgreen: '#9acd32',\n};\n","/* eslint-disable @typescript-eslint/no-redundant-type-constituents */\nimport { convertHexToDecimal, hslToRgb, hsvToRgb, parseIntFromHex, rgbToRgb } from './conversion';\nimport { names } from './css-color-names';\nimport { boundAlpha, convertToPercentage } from './util';\n/**\n * Given a string or object, convert that input to RGB\n *\n * Possible string inputs:\n * ```\n * \"red\"\n * \"#f00\" or \"f00\"\n * \"#ff0000\" or \"ff0000\"\n * \"#ff000000\" or \"ff000000\"\n * \"rgb 255 0 0\" or \"rgb (255, 0, 0)\"\n * \"rgb 1.0 0 0\" or \"rgb (1, 0, 0)\"\n * \"rgba (255, 0, 0, 1)\" or \"rgba 255, 0, 0, 1\"\n * \"rgba (1.0, 0, 0, 1)\" or \"rgba 1.0, 0, 0, 1\"\n * \"hsl(0, 100%, 50%)\" or \"hsl 0 100% 50%\"\n * \"hsla(0, 100%, 50%, 1)\" or \"hsla 0 100% 50%, 1\"\n * \"hsv(0, 100%, 100%)\" or \"hsv 0 100% 100%\"\n * ```\n */\nexport function inputToRGB(color) {\n var rgb = { r: 0, g: 0, b: 0 };\n var a = 1;\n var s = null;\n var v = null;\n var l = null;\n var ok = false;\n var format = false;\n if (typeof color === 'string') {\n color = stringInputToObject(color);\n }\n if (typeof color === 'object') {\n if (isValidCSSUnit(color.r) && isValidCSSUnit(color.g) && isValidCSSUnit(color.b)) {\n rgb = rgbToRgb(color.r, color.g, color.b);\n ok = true;\n format = String(color.r).substr(-1) === '%' ? 'prgb' : 'rgb';\n }\n else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.v)) {\n s = convertToPercentage(color.s);\n v = convertToPercentage(color.v);\n rgb = hsvToRgb(color.h, s, v);\n ok = true;\n format = 'hsv';\n }\n else if (isValidCSSUnit(color.h) && isValidCSSUnit(color.s) && isValidCSSUnit(color.l)) {\n s = convertToPercentage(color.s);\n l = convertToPercentage(color.l);\n rgb = hslToRgb(color.h, s, l);\n ok = true;\n format = 'hsl';\n }\n if (Object.prototype.hasOwnProperty.call(color, 'a')) {\n a = color.a;\n }\n }\n a = boundAlpha(a);\n return {\n ok: ok,\n format: color.format || format,\n r: Math.min(255, Math.max(rgb.r, 0)),\n g: Math.min(255, Math.max(rgb.g, 0)),\n b: Math.min(255, Math.max(rgb.b, 0)),\n a: a,\n };\n}\n// <http://www.w3.org/TR/css3-values/#integers>\nvar CSS_INTEGER = '[-\\\\+]?\\\\d+%?';\n// <http://www.w3.org/TR/css3-values/#number-value>\nvar CSS_NUMBER = '[-\\\\+]?\\\\d*\\\\.\\\\d+%?';\n// Allow positive/negative integer/number. Don't capture the either/or, just the entire outcome.\nvar CSS_UNIT = \"(?:\".concat(CSS_NUMBER, \")|(?:\").concat(CSS_INTEGER, \")\");\n// Actual matching.\n// Parentheses and commas are optional, but not required.\n// Whitespace can take the place of commas or opening paren\nvar PERMISSIVE_MATCH3 = \"[\\\\s|\\\\(]+(\".concat(CSS_UNIT, \")[,|\\\\s]+(\").concat(CSS_UNIT, \")[,|\\\\s]+(\").concat(CSS_UNIT, \")\\\\s*\\\\)?\");\nvar PERMISSIVE_MATCH4 = \"[\\\\s|\\\\(]+(\".concat(CSS_UNIT, \")[,|\\\\s]+(\").concat(CSS_UNIT, \")[,|\\\\s]+(\").concat(CSS_UNIT, \")[,|\\\\s]+(\").concat(CSS_UNIT, \")\\\\s*\\\\)?\");\nvar matchers = {\n CSS_UNIT: new RegExp(CSS_UNIT),\n rgb: new RegExp('rgb' + PERMISSIVE_MATCH3),\n rgba: new RegExp('rgba' + PERMISSIVE_MATCH4),\n hsl: new RegExp('hsl' + PERMISSIVE_MATCH3),\n hsla: new RegExp('hsla' + PERMISSIVE_MATCH4),\n hsv: new RegExp('hsv' + PERMISSIVE_MATCH3),\n hsva: new RegExp('hsva' + PERMISSIVE_MATCH4),\n hex3: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex6: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,\n hex4: /^#?([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})([0-9a-fA-F]{1})$/,\n hex8: /^#?([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})([0-9a-fA-F]{2})$/,\n};\n/**\n * Permissive string parsing. Take in a number of formats, and output an object\n * based on detected format. Returns `{ r, g, b }` or `{ h, s, l }` or `{ h, s, v}`\n */\nexport function stringInputToObject(color) {\n color = color.trim().toLowerCase();\n if (color.length === 0) {\n return false;\n }\n var named = false;\n if (names[color]) {\n color = names[color];\n named = true;\n }\n else if (color === 'transparent') {\n return { r: 0, g: 0, b: 0, a: 0, format: 'name' };\n }\n // Try to match string input using regular expressions.\n // Keep most of the number bounding out of this function - don't worry about [0,1] or [0,100] or [0,360]\n // Just return an object and let the conversion functions handle that.\n // This way the result will be the same whether the tinycolor is initialized with string or object.\n var match = matchers.rgb.exec(color);\n if (match) {\n return { r: match[1], g: match[2], b: match[3] };\n }\n match = matchers.rgba.exec(color);\n if (match) {\n return { r: match[1], g: match[2], b: match[3], a: match[4] };\n }\n match = matchers.hsl.exec(color);\n if (match) {\n return { h: match[1], s: match[2], l: match[3] };\n }\n match = matchers.hsla.exec(color);\n if (match) {\n return { h: match[1], s: match[2], l: match[3], a: match[4] };\n }\n match = matchers.hsv.exec(color);\n if (match) {\n return { h: match[1], s: match[2], v: match[3] };\n }\n match = matchers.hsva.exec(color);\n if (match) {\n return { h: match[1], s: match[2], v: match[3], a: match[4] };\n }\n match = matchers.hex8.exec(color);\n if (match) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n a: convertHexToDecimal(match[4]),\n format: named ? 'name' : 'hex8',\n };\n }\n match = matchers.hex6.exec(color);\n if (match) {\n return {\n r: parseIntFromHex(match[1]),\n g: parseIntFromHex(match[2]),\n b: parseIntFromHex(match[3]),\n format: named ? 'name' : 'hex',\n };\n }\n match = matchers.hex4.exec(color);\n if (match) {\n return {\n r: parseIntFromHex(match[1] + match[1]),\n g: parseIntFromHex(match[2] + match[2]),\n b: parseIntFromHex(match[3] + match[3]),\n a: convertHexToDecimal(match[4] + match[4]),\n format: named ? 'name' : 'hex8',\n };\n }\n match = matchers.hex3.exec(color);\n if (match) {\n return {\n r: parseIntFromHex(match[1] + match[1]),\n g: parseIntFromHex(match[2] + match[2]),\n b: parseIntFromHex(match[3] + match[3]),\n format: named ? 'name' : 'hex',\n };\n }\n return false;\n}\n/**\n * Check to see if it looks like a CSS unit\n * (see `matchers` above for definition).\n */\nexport function isValidCSSUnit(color) {\n return Boolean(matchers.CSS_UNIT.exec(String(color)));\n}\n","import { numberInputToObject, rgbaToHex, rgbToHex, rgbToHsl, rgbToHsv } from './conversion';\nimport { names } from './css-color-names';\nimport { inputToRGB } from './format-input';\nimport { bound01, boundAlpha, clamp01 } from './util';\nvar TinyColor = /** @class */ (function () {\n function TinyColor(color, opts) {\n if (color === void 0) { color = ''; }\n if (opts === void 0) { opts = {}; }\n var _a;\n // If input is already a tinycolor, return itself\n if (color instanceof TinyColor) {\n // eslint-disable-next-line no-constructor-return\n return color;\n }\n if (typeof color === 'number') {\n color = numberInputToObject(color);\n }\n this.originalInput = color;\n var rgb = inputToRGB(color);\n this.originalInput = color;\n this.r = rgb.r;\n this.g = rgb.g;\n this.b = rgb.b;\n this.a = rgb.a;\n this.roundA = Math.round(100 * this.a) / 100;\n this.format = (_a = opts.format) !== null && _a !== void 0 ? _a : rgb.format;\n this.gradientType = opts.gradientType;\n // Don't let the range of [0,255] come back in [0,1].\n // Potentially lose a little bit of precision here, but will fix issues where\n // .5 gets interpreted as half of the total, instead of half of 1\n // If it was supposed to be 128, this was already taken care of by `inputToRgb`\n if (this.r < 1) {\n this.r = Math.round(this.r);\n }\n if (this.g < 1) {\n this.g = Math.round(this.g);\n }\n if (this.b < 1) {\n this.b = Math.round(this.b);\n }\n this.isValid = rgb.ok;\n }\n TinyColor.prototype.isDark = function () {\n return this.getBrightness() < 128;\n };\n TinyColor.prototype.isLight = function () {\n return !this.isDark();\n };\n /**\n * Returns the perceived brightness of the color, from 0-255.\n */\n TinyColor.prototype.getBrightness = function () {\n // http://www.w3.org/TR/AERT#color-contrast\n var rgb = this.toRgb();\n return (rgb.r * 299 + rgb.g * 587 + rgb.b * 114) / 1000;\n };\n /**\n * Returns the perceived luminance of a color, from 0-1.\n */\n TinyColor.prototype.getLuminance = function () {\n // http://www.w3.org/TR/2008/REC-WCAG20-20081211/#relativeluminancedef\n var rgb = this.toRgb();\n var R;\n var G;\n var B;\n var RsRGB = rgb.r / 255;\n var GsRGB = rgb.g / 255;\n var BsRGB = rgb.b / 255;\n if (RsRGB <= 0.03928) {\n R = RsRGB / 12.92;\n }\n else {\n // eslint-disable-next-line prefer-exponentiation-operator\n R = Math.pow((RsRGB + 0.055) / 1.055, 2.4);\n }\n if (GsRGB <= 0.03928) {\n G = GsRGB / 12.92;\n }\n else {\n // eslint-disable-next-line prefer-exponentiation-operator\n G = Math.pow((GsRGB + 0.055) / 1.055, 2.4);\n }\n if (BsRGB <= 0.03928) {\n B = BsRGB / 12.92;\n }\n else {\n // eslint-disable-next-line prefer-exponentiation-operator\n B = Math.pow((BsRGB + 0.055) / 1.055, 2.4);\n }\n return 0.2126 * R + 0.7152 * G + 0.0722 * B;\n };\n /**\n * Returns the alpha value of a color, from 0-1.\n */\n TinyColor.prototype.getAlpha = function () {\n return this.a;\n };\n /**\n * Sets the alpha value on the current color.\n *\n * @param alpha - The new alpha value. The accepted range is 0-1.\n */\n TinyColor.prototype.setAlpha = function (alpha) {\n this.a = boundAlpha(alpha);\n this.roundA = Math.round(100 * this.a) / 100;\n return this;\n };\n /**\n * Returns whether the color is monochrome.\n */\n TinyColor.prototype.isMonochrome = function () {\n var s = this.toHsl().s;\n return s === 0;\n };\n /**\n * Returns the object as a HSVA object.\n */\n TinyColor.prototype.toHsv = function () {\n var hsv = rgbToHsv(this.r, this.g, this.b);\n return { h: hsv.h * 360, s: hsv.s, v: hsv.v, a: this.a };\n };\n /**\n * Returns the hsva values interpolated into a string with the following format:\n * \"hsva(xxx, xxx, xxx, xx)\".\n */\n TinyColor.prototype.toHsvString = function () {\n var hsv = rgbToHsv(this.r, this.g, this.b);\n var h = Math.round(hsv.h * 360);\n var s = Math.round(hsv.s * 100);\n var v = Math.round(hsv.v * 100);\n return this.a === 1 ? \"hsv(\".concat(h, \", \").concat(s, \"%, \").concat(v, \"%)\") : \"hsva(\".concat(h, \", \").concat(s, \"%, \").concat(v, \"%, \").concat(this.roundA, \")\");\n };\n /**\n * Returns the object as a HSLA object.\n */\n TinyColor.prototype.toHsl = function () {\n var hsl = rgbToHsl(this.r, this.g, this.b);\n return { h: hsl.h * 360, s: hsl.s, l: hsl.l, a: this.a };\n };\n /**\n * Returns the hsla values interpolated into a string with the following format:\n * \"hsla(xxx, xxx, xxx, xx)\".\n */\n TinyColor.prototype.toHslString = function () {\n var hsl = rgbToHsl(this.r, this.g, this.b);\n var h = Math.round(hsl.h * 360);\n var s = Math.round(hsl.s * 100);\n var l = Math.round(hsl.l * 100);\n return this.a === 1 ? \"hsl(\".concat(h, \", \").concat(s, \"%, \").concat(l, \"%)\") : \"hsla(\".concat(h, \", \").concat(s, \"%, \").concat(l, \"%, \").concat(this.roundA, \")\");\n };\n /**\n * Returns the hex value of the color.\n * @param allow3Char will shorten hex value to 3 char if possible\n */\n TinyColor.prototype.toHex = function (allow3Char) {\n if (allow3Char === void 0) { allow3Char = false; }\n return rgbToHex(this.r, this.g, this.b, allow3Char);\n };\n /**\n * Returns the hex value of the color -with a # prefixed.\n * @param allow3Char will shorten hex value to 3 char if possible\n */\n TinyColor.prototype.toHexString = function (allow3Char) {\n if (allow3Char === void 0) { allow3Char = false; }\n return '#' + this.toHex(allow3Char);\n };\n /**\n * Returns the hex 8 value of the color.\n * @param allow4Char will shorten hex value to 4 char if possible\n */\n TinyColor.prototype.toHex8 = function (allow4Char) {\n if (allow4Char === void 0) { allow4Char = false; }\n return rgbaToHex(this.r, this.g, this.b, this.a, allow4Char);\n };\n /**\n * Returns the hex 8 value of the color -with a # prefixed.\n * @param allow4Char will shorten hex value to 4 char if possible\n */\n TinyColor.prototype.toHex8String = function (allow4Char) {\n if (allow4Char === void 0) { allow4Char = false; }\n return '#' + this.toHex8(allow4Char);\n };\n /**\n * Returns the shorter hex value of the color depends on its alpha -with a # prefixed.\n * @param allowShortChar will shorten hex value to 3 or 4 char if possible\n */\n TinyColor.prototype.toHexShortString = function (allowShortChar) {\n if (allowShortChar === void 0) { allowShortChar = false; }\n return this.a === 1 ? this.toHexString(allowShortChar) : this.toHex8String(allowShortChar);\n };\n /**\n * Returns the object as a RGBA object.\n */\n TinyColor.prototype.toRgb = function () {\n return {\n r: Math.round(this.r),\n g: Math.round(this.g),\n b: Math.round(this.b),\n a: this.a,\n };\n };\n /**\n * Returns the RGBA values interpolated into a string with the following format:\n * \"RGBA(xxx, xxx, xxx, xx)\".\n */\n TinyColor.prototype.toRgbString = function () {\n var r = Math.round(this.r);\n var g = Math.round(this.g);\n var b = Math.round(this.b);\n return this.a === 1 ? \"rgb(\".concat(r, \", \").concat(g, \", \").concat(b, \")\") : \"rgba(\".concat(r, \", \").concat(g, \", \").concat(b, \", \").concat(this.roundA, \")\");\n };\n /**\n * Returns the object as a RGBA object.\n */\n TinyColor.prototype.toPercentageRgb = function () {\n var fmt = function (x) { return \"\".concat(Math.round(bound01(x, 255) * 100), \"%\"); };\n return {\n r: fmt(this.r),\n g: fmt(this.g),\n b: fmt(this.b),\n a: this.a,\n };\n };\n /**\n * Returns the RGBA relative values interpolated into a string\n */\n TinyColor.prototype.toPercentageRgbString = function () {\n var rnd = function (x) { return Math.round(bound01(x, 255) * 100); };\n return this.a === 1\n ? \"rgb(\".concat(rnd(this.r), \"%, \").concat(rnd(this.g), \"%, \").concat(rnd(this.b), \"%)\")\n : \"rgba(\".concat(rnd(this.r), \"%, \").concat(rnd(this.g), \"%, \").concat(rnd(this.b), \"%, \").concat(this.roundA, \")\");\n };\n /**\n * The 'real' name of the color -if there is one.\n */\n TinyColor.prototype.toName = function () {\n if (this.a === 0) {\n return 'transparent';\n }\n if (this.a < 1) {\n return false;\n }\n var hex = '#' + rgbToHex(this.r, this.g, this.b, false);\n for (var _i = 0, _a = Object.entries(names); _i < _a.length; _i++) {\n var _b = _a[_i], key = _b[0], value = _b[1];\n if (hex === value) {\n return key;\n }\n }\n return false;\n };\n TinyColor.prototype.toString = function (format) {\n var formatSet = Boolean(format);\n format = format !== null && format !== void 0 ? format : this.format;\n var formattedString = false;\n var hasAlpha = this.a < 1 && this.a >= 0;\n var needsAlphaFormat = !formatSet && hasAlpha && (format.startsWith('hex') || format === 'name');\n if (needsAlphaFormat) {\n // Special case for \"transparent\", all other non-alpha formats\n // will return rgba when there is transparency.\n if (format === 'name' && this.a === 0) {\n return this.toName();\n }\n return this.toRgbString();\n }\n if (format === 'rgb') {\n formattedString = this.toRgbString();\n }\n if (format === 'prgb') {\n formattedString = this.toPercentageRgbString();\n }\n if (format === 'hex' || format === 'hex6') {\n formattedString = this.toHexString();\n }\n if (format === 'hex3') {\n formattedString = this.toHexString(true);\n }\n if (format === 'hex4') {\n formattedString = this.toHex8String(true);\n }\n if (format === 'hex8') {\n formattedString = this.toHex8String();\n }\n if (format === 'name') {\n formattedString = this.toName();\n }\n if (format === 'hsl') {\n formattedString = this.toHslString();\n }\n if (format === 'hsv') {\n formattedString = this.toHsvString();\n }\n return formattedString || this.toHexString();\n };\n TinyColor.prototype.toNumber = function () {\n return (Math.round(this.r) << 16) + (Math.round(this.g) << 8) + Math.round(this.b);\n };\n TinyColor.prototype.clone = function () {\n return new TinyColor(this.toString());\n };\n /**\n * Lighten the color a given amount. Providing 100 will always return white.\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.lighten = function (amount) {\n if (amount === void 0) { amount = 10; }\n var hsl = this.toHsl();\n hsl.l += amount / 100;\n hsl.l = clamp01(hsl.l);\n return new TinyColor(hsl);\n };\n /**\n * Brighten the color a given amount, from 0 to 100.\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.brighten = function (amount) {\n if (amount === void 0) { amount = 10; }\n var rgb = this.toRgb();\n rgb.r = Math.max(0, Math.min(255, rgb.r - Math.round(255 * -(amount / 100))));\n rgb.g = Math.max(0, Math.min(255, rgb.g - Math.round(255 * -(amount / 100))));\n rgb.b = Math.max(0, Math.min(255, rgb.b - Math.round(255 * -(amount / 100))));\n return new TinyColor(rgb);\n };\n /**\n * Darken the color a given amount, from 0 to 100.\n * Providing 100 will always return black.\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.darken = function (amount) {\n if (amount === void 0) { amount = 10; }\n var hsl = this.toHsl();\n hsl.l -= amount / 100;\n hsl.l = clamp01(hsl.l);\n return new TinyColor(hsl);\n };\n /**\n * Mix the color with pure white, from 0 to 100.\n * Providing 0 will do nothing, providing 100 will always return white.\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.tint = function (amount) {\n if (amount === void 0) { amount = 10; }\n return this.mix('white', amount);\n };\n /**\n * Mix the color with pure black, from 0 to 100.\n * Providing 0 will do nothing, providing 100 will always return black.\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.shade = function (amount) {\n if (amount === void 0) { amount = 10; }\n return this.mix('black', amount);\n };\n /**\n * Desaturate the color a given amount, from 0 to 100.\n * Providing 100 will is the same as calling greyscale\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.desaturate = function (amount) {\n if (amount === void 0) { amount = 10; }\n var hsl = this.toHsl();\n hsl.s -= amount / 100;\n hsl.s = clamp01(hsl.s);\n return new TinyColor(hsl);\n };\n /**\n * Saturate the color a given amount, from 0 to 100.\n * @param amount - valid between 1-100\n */\n TinyColor.prototype.saturate = function (amount) {\n if (amount === void 0) { amount = 10; }\n var hsl = this.toHsl();\n hsl.s += amount / 100;\n hsl.s = clamp01(hsl.s);\n return new TinyColor(hsl);\n };\n /**\n * Completely desaturates a color into greyscale.\n * Same as calling `desaturate(100)`\n */\n TinyColor.prototype.greyscale = function () {\n return this.desaturate(100);\n };\n /**\n * Spin takes a positive or negative amount within [-360, 360] indicating the change of hue.\n * Values outside of this range will be wrapped into this range.\n */\n TinyColor.prototype.spin = function (amount) {\n var hsl = this.toHsl();\n var hue = (hsl.h + amount) % 360;\n hsl.h = hue < 0 ? 360 + hue : hue;\n return new TinyColor(hsl);\n };\n /**\n * Mix the current color a given amount with another color, from 0 to 100.\n * 0 means no mixing (return current color).\n */\n TinyColor.prototype.mix = function (color, amount) {\n if (amount === void 0) { amount = 50; }\n var rgb1 = this.toRgb();\n var rgb2 = new TinyColor(color).toRgb();\n var p = amount / 100;\n var rgba = {\n r: (rgb2.r - rgb1.r) * p + rgb1.r,\n g: (rgb2.g - rgb1.g) * p + rgb1.g,\n b: (rgb2.b - rgb1.b) * p + rgb1.b,\n a: (rgb2.a - rgb1.a) * p + rgb1.a,\n };\n return new TinyColor(rgba);\n };\n TinyColor.prototype.analogous = function (results, slices) {\n if (results === void 0) { results = 6; }\n if (slices === void 0) { slices = 30; }\n var hsl = this.toHsl();\n var part = 360 / slices;\n var ret = [this];\n for (hsl.h = (hsl.h - ((part * results) >> 1) + 720) % 360; --results;) {\n hsl.h = (hsl.h + part) % 360;\n ret.push(new TinyColor(hsl));\n }\n return ret;\n };\n /**\n * taken from https://github.com/infusion/jQuery-xcolor/blob/master/jquery.xcolor.js\n */\n TinyColor.prototype.complement = function () {\n var hsl = this.toHsl();\n hsl.h = (hsl.h + 180) % 360;\n return new TinyColor(hsl);\n };\n TinyColor.prototype.monochromatic = function (results) {\n if (results === void 0) { results = 6; }\n var hsv = this.toHsv();\n var h = hsv.h;\n var s = hsv.s;\n var v = hsv.v;\n var res = [];\n var modification = 1 / results;\n while (results--) {\n res.push(new TinyColor({ h: h, s: s, v: v }));\n v = (v + modification) % 1;\n }\n return res;\n };\n TinyColor.prototype.splitcomplement = function () {\n var hsl = this.toHsl();\n var h = hsl.h;\n return [\n this,\n new TinyColor({ h: (h + 72) % 360, s: hsl.s, l: hsl.l }),\n new TinyColor({ h: (h + 216) % 360, s: hsl.s, l: hsl.l }),\n ];\n };\n /**\n * Compute how the color would appear on a background\n */\n TinyColor.prototype.onBackground = function (background) {\n var fg = this.toRgb();\n var bg = new TinyColor(background).toRgb();\n var alpha = fg.a + bg.a * (1 - fg.a);\n return new TinyColor({\n r: (fg.r * fg.a + bg.r * bg.a * (1 - fg.a)) / alpha,\n g: (fg.g * fg.a + bg.g * bg.a * (1 - fg.a)) / alpha,\n b: (fg.b * fg.a + bg.b * bg.a * (1 - fg.a)) / alpha,\n a: alpha,\n });\n };\n /**\n * Alias for `polyad(3)`\n */\n TinyColor.prototype.triad = function () {\n return this.polyad(3);\n };\n /**\n * Alias for `polyad(4)`\n */\n TinyColor.prototype.tetrad = function () {\n return this.polyad(4);\n };\n /**\n * Get polyad colors, like (for 1, 2, 3, 4, 5, 6, 7, 8, etc...)\n * monad, dyad, triad, tetrad, pentad, hexad, heptad, octad, etc...\n */\n TinyColor.prototype.polyad = function (n) {\n var hsl = this.toHsl();\n var h = hsl.h;\n var result = [this];\n var increment = 360 / n;\n for (var i = 1; i < n; i++) {\n result.push(new TinyColor({ h: (h + i * increment) % 360, s: hsl.s, l: hsl.l }));\n }\n return result;\n };\n /**\n * compare color vs current color\n */\n TinyColor.prototype.equals = function (color) {\n return this.toRgbString() === new TinyColor(color).toRgbString();\n };\n return TinyColor;\n}());\nexport { TinyColor };\n// kept for backwards compatability with v1\nexport function tinycolor(color, opts) {\n if (color === void 0) { color = ''; }\n if (opts === void 0) { opts = {}; }\n return new TinyColor(color, opts);\n}\n","import { inputToRGB, rgbToHex, rgbToHsv } from '@ctrl/tinycolor';\n\nvar hueStep = 2; // 色相阶梯\n\nvar saturationStep = 0.16; // 饱和度阶梯,浅色部分\n\nvar saturationStep2 = 0.05; // 饱和度阶梯,深色部分\n\nvar brightnessStep1 = 0.05; // 亮度阶梯,浅色部分\n\nvar brightnessStep2 = 0.15; // 亮度阶梯,深色部分\n\nvar lightColorCount = 5; // 浅色数量,主色上\n\nvar darkColorCount = 4; // 深色数量,主色下\n// 暗色主题颜色映射关系表\n\nvar darkColorMap = [{\n index: 7,\n opacity: 0.15\n}, {\n index: 6,\n opacity: 0.25\n}, {\n index: 5,\n opacity: 0.3\n}, {\n index: 5,\n opacity: 0.45\n}, {\n index: 5,\n opacity: 0.65\n}, {\n index: 5,\n opacity: 0.85\n}, {\n index: 4,\n opacity: 0.9\n}, {\n index: 3,\n opacity: 0.95\n}, {\n index: 2,\n opacity: 0.97\n}, {\n index: 1,\n opacity: 0.98\n}]; // Wrapper function ported from TinyColor.prototype.toHsv\n// Keep it here because of `hsv.h * 360`\n\nfunction toHsv(_ref) {\n var r = _ref.r,\n g = _ref.g,\n b = _ref.b;\n var hsv = rgbToHsv(r, g, b);\n return {\n h: hsv.h * 360,\n s: hsv.s,\n v: hsv.v\n };\n} // Wrapper function ported from TinyColor.prototype.toHexString\n// Keep it here because of the prefix `#`\n\n\nfunction toHex(_ref2) {\n var r = _ref2.r,\n g = _ref2.g,\n b = _ref2.b;\n return \"#\".concat(rgbToHex(r, g, b, false));\n} // Wrapper function ported from TinyColor.prototype.mix, not treeshakable.\n// Amount in range [0, 1]\n// Assume color1 & color2 has no alpha, since the following src code did so.\n\n\nfunction mix(rgb1, rgb2, amount) {\n var p = amount / 100;\n var rgb = {\n r: (rgb2.r - rgb1.r) * p + rgb1.r,\n g: (rgb2.g - rgb1.g) * p + rgb1.g,\n b: (rgb2.b - rgb1.b) * p + rgb1.b\n };\n return rgb;\n}\n\nfunction getHue(hsv, i, light) {\n var hue; // 根据色相不同,色相转向不同\n\n if (Math.round(hsv.h) >= 60 && Math.round(hsv.h) <= 240) {\n hue = light ? Math.round(hsv.h) - hueStep * i : Math.round(hsv.h) + hueStep * i;\n } else {\n hue = light ? Math.round(hsv.h) + hueStep * i : Math.round(hsv.h) - hueStep * i;\n }\n\n if (hue < 0) {\n hue += 360;\n } else if (hue >= 360) {\n hue -= 360;\n }\n\n return hue;\n}\n\nfunction getSaturation(hsv, i, light) {\n // grey color don't change saturation\n if (hsv.h === 0 && hsv.s === 0) {\n return hsv.s;\n }\n\n var saturation;\n\n if (light) {\n saturation = hsv.s - saturationStep * i;\n } else if (i === darkColorCount) {\n saturation = hsv.s + saturationStep;\n } else {\n saturation = hsv.s + saturationStep2 * i;\n } // 边界值修正\n\n\n if (saturation > 1) {\n saturation = 1;\n } // 第一格的 s 限制在 0.06-0.1 之间\n\n\n if (light && i === lightColorCount && saturation > 0.1) {\n saturation = 0.1;\n }\n\n if (saturation < 0.06) {\n saturation = 0.06;\n }\n\n return Number(saturation.toFixed(2));\n}\n\nfunction getValue(hsv, i, light) {\n var value;\n\n if (light) {\n value = hsv.v + brightnessStep1 * i;\n } else {\n value = hsv.v - brightnessStep2 * i;\n }\n\n if (value > 1) {\n value = 1;\n }\n\n return Number(value.toFixed(2));\n}\n\nfunction generate(color) {\n var opts = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var patterns = [];\n var pColor = inputToRGB(color);\n\n for (var i = lightColorCount; i > 0; i -= 1) {\n var hsv = toHsv(pColor);\n var colorString = toHex(inputToRGB({\n h: getHue(hsv, i, true),\n s: getSaturation(hsv, i, true),\n v: getValue(hsv, i, true)\n }));\n patterns.push(colorString);\n }\n\n patterns.push(toHex(pColor));\n\n for (var _i = 1; _i <= darkColorCount; _i += 1) {\n var _hsv = toHsv(pColor);\n\n var _colorString = toHex(inputToRGB({\n h: getHue(_hsv, _i),\n s: getSaturation(_hsv, _i),\n v: getValue(_hsv, _i)\n }));\n\n patterns.push(_colorString);\n } // dark theme patterns\n\n\n if (opts.theme === 'dark') {\n return darkColorMap.map(function (_ref3) {\n var index = _ref3.index,\n opacity = _ref3.opacity;\n var darkColorString = toHex(mix(inputToRGB(opts.backgroundColor || '#141414'), inputToRGB(patterns[index]), opacity * 100));\n return darkColorString;\n });\n }\n\n return patterns;\n}\n\nvar presetPrimaryColors = {\n red: '#F5222D',\n volcano: '#FA541C',\n orange: '#FA8C16',\n gold: '#FAAD14',\n yellow: '#FADB14',\n lime: '#A0D911',\n green: '#52C41A',\n cyan: '#13C2C2',\n blue: '#1890FF',\n geekblue: '#2F54EB',\n purple: '#722ED1',\n magenta: '#EB2F96',\n grey: '#666666'\n};\nvar presetPalettes = {};\nvar presetDarkPalettes = {};\nObject.keys(presetPrimaryColors).forEach(function (key) {\n presetPalettes[key] = generate(presetPrimaryColors[key]);\n presetPalettes[key].primary = presetPalettes[key][5]; // dark presetPalettes\n\n presetDarkPalettes[key] = generate(presetPrimaryColors[key], {\n theme: 'dark',\n backgroundColor: '#141414'\n });\n presetDarkPalettes[key].primary = presetDarkPalettes[key][5];\n});\nvar red = presetPalettes.red;\nvar volcano = presetPalettes.volcano;\nvar gold = presetPalettes.gold;\nvar orange = presetPalettes.orange;\nvar yellow = presetPalettes.yellow;\nvar lime = presetPalettes.lime;\nvar green = presetPalettes.green;\nvar cyan = presetPalettes.cyan;\nvar blue = presetPalettes.blue;\nvar geekblue = presetPalettes.geekblue;\nvar purple = presetPalettes.purple;\nvar magenta = presetPalettes.magenta;\nvar grey = presetPalettes.grey;\n\nexport { blue, cyan, geekblue, generate, gold, green, grey, lime, magenta, orange, presetDarkPalettes, presetPalettes, presetPrimaryColors, purple, red, volcano, yellow };\n","import { inject, provide, ref } from 'vue';\nvar contextKey = Symbol('iconContext');\nexport var useProvideIconContext = function useProvideIconContext(props) {\n provide(contextKey, props);\n return props;\n};\nexport var useInjectIconContext = function useInjectIconContext() {\n return inject(contextKey, {\n prefixCls: ref('anticon'),\n rootClassName: ref(''),\n csp: ref()\n });\n};","function canUseDom() {\n return !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n}\n\nfunction contains(root, n) {\n if (!root) {\n return false;\n } // Use native if support\n\n\n if (root.contains) {\n return root.contains(n);\n }\n\n return false;\n}\n\nvar APPEND_ORDER = 'data-vc-order';\nvar MARK_KEY = \"vc-icon-key\";\nvar containerCache = new Map();\n\nfunction getMark() {\n var _ref = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {},\n mark = _ref.mark;\n\n if (mark) {\n return mark.startsWith('data-') ? mark : \"data-\".concat(mark);\n }\n\n return MARK_KEY;\n}\n\nfunction getContainer(option) {\n if (option.attachTo) {\n return option.attachTo;\n }\n\n var head = document.querySelector('head');\n return head || document.body;\n}\n\nfunction getOrder(prepend) {\n if (prepend === 'queue') {\n return 'prependQueue';\n }\n\n return prepend ? 'prepend' : 'append';\n}\n/**\n * Find style which inject by rc-util\n */\n\n\nfunction findStyles(container) {\n return Array.from((containerCache.get(container) || container).children).filter(function (node) {\n return node.tagName === 'STYLE';\n });\n}\n\nexport function injectCSS(css) {\n var option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n\n if (!canUseDom()) {\n return null;\n }\n\n var csp = option.csp,\n prepend = option.prepend;\n var styleNode = document.createElement('style');\n styleNode.setAttribute(APPEND_ORDER, getOrder(prepend));\n\n if (csp && csp.nonce) {\n styleNode.nonce = csp.nonce;\n }\n\n styleNode.innerHTML = css;\n var container = getContainer(option);\n var firstChild = container.firstChild;\n\n if (prepend) {\n // If is queue `prepend`, it will prepend first style and then append rest style\n if (prepend === 'queue') {\n var existStyle = findStyles(container).filter(function (node) {\n return ['prepend', 'prependQueue'].includes(node.getAttribute(APPEND_ORDER));\n });\n\n if (existStyle.length) {\n container.insertBefore(styleNode, existStyle[existStyle.length - 1].nextSibling);\n return styleNode;\n }\n } // Use `insertBefore` as `prepend`\n\n\n container.insertBefore(styleNode, firstChild);\n } else {\n container.appendChild(styleNode);\n }\n\n return styleNode;\n}\n\nfunction findExistNode(key) {\n var option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var container = getContainer(option);\n return findStyles(container).find(function (node) {\n return node.getAttribute(getMark(option)) === key;\n });\n}\n\nexport function removeCSS(key) {\n var option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n var existNode = findExistNode(key, option);\n\n if (existNode) {\n var container = getContainer(option);\n container.removeChild(existNode);\n }\n}\n/**\n * qiankun will inject `appendChild` to insert into other\n */\n\nfunction syncRealContainer(container, option) {\n var cachedRealContainer = containerCache.get(container); // Find real container when not cached or cached container removed\n\n if (!cachedRealContainer || !contains(document, cachedRealContainer)) {\n var placeholderStyle = injectCSS('', option);\n var parentNode = placeholderStyle.parentNode;\n containerCache.set(container, parentNode);\n container.removeChild(placeholderStyle);\n }\n}\n/**\n * manually clear container cache to avoid global cache in unit testes\n */\n\n\nexport function clearContainerCache() {\n containerCache.clear();\n}\nexport function updateCSS(css, key) {\n var option = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var container = getContainer(option); // Sync real parent\n\n syncRealContainer(container, option);\n var existNode = findExistNode(key, option);\n\n if (existNode) {\n if (option.csp && option.csp.nonce && existNode.nonce !== option.csp.nonce) {\n existNode.nonce = option.csp.nonce;\n }\n\n if (existNode.innerHTML !== css) {\n existNode.innerHTML = css;\n }\n\n return existNode;\n }\n\n var newNode = injectCSS(css, option);\n newNode.setAttribute(getMark(option), key);\n return newNode;\n}","function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { nextTick, h, getCurrentInstance } from 'vue';\nimport { generate as generateColor } from '@ant-design/colors';\nimport { useInjectIconContext } from './components/Context';\nimport { updateCSS } from './dynamicCSS';\nexport function warn(valid, message) {\n // Support uglify\n if (process.env.NODE_ENV !== 'production' && !valid && console !== undefined) {\n console.error(\"Warning: \".concat(message));\n }\n}\nexport function warning(valid, message) {\n warn(valid, \"[@ant-design/icons-vue] \".concat(message));\n}\n\nfunction camelCase(input) {\n return input.replace(/-(.)/g, function (_match, g) {\n return g.toUpperCase();\n });\n} // eslint-disable-next-line @typescript-eslint/explicit-module-boundary-types\n\n\nexport function isIconDefinition(target) {\n return typeof target === 'object' && typeof target.name === 'string' && typeof target.theme === 'string' && (typeof target.icon === 'object' || typeof target.icon === 'function');\n}\nexport function normalizeAttrs() {\n var attrs = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n return Object.keys(attrs).reduce(function (acc, key) {\n var val = attrs[key];\n\n switch (key) {\n case 'class':\n acc.className = val;\n delete acc[\"class\"];\n break;\n\n default:\n delete acc[key];\n acc[camelCase(key)] = val;\n }\n\n return acc;\n }, {});\n}\nexport function generate(node, key, rootProps) {\n if (!rootProps) {\n return h(node.tag, _objectSpread({\n key: key\n }, node.attrs), (node.children || []).map(function (child, index) {\n return generate(child, \"\".concat(key, \"-\").concat(node.tag, \"-\").concat(index));\n }));\n }\n\n return h(node.tag, _objectSpread({\n key: key\n }, rootProps, node.attrs), (node.children || []).map(function (child, index) {\n return generate(child, \"\".concat(key, \"-\").concat(node.tag, \"-\").concat(index));\n }));\n}\nexport function getSecondaryColor(primaryColor) {\n // choose the second color\n return generateColor(primaryColor)[0];\n}\nexport function normalizeTwoToneColors(twoToneColor) {\n if (!twoToneColor) {\n return [];\n }\n\n return Array.isArray(twoToneColor) ? twoToneColor : [twoToneColor];\n} // These props make sure that the SVG behaviours like general text.\n// Reference: https://blog.prototypr.io/align-svg-icons-to-text-and-say-goodbye-to-font-icons-d44b3d7b26b4\n\nexport var svgBaseProps = {\n width: '1em',\n height: '1em',\n fill: 'currentColor',\n 'aria-hidden': 'true',\n focusable: 'false'\n};\nexport var iconStyles = \"\\n.anticon {\\n display: inline-block;\\n color: inherit;\\n font-style: normal;\\n line-height: 0;\\n text-align: center;\\n text-transform: none;\\n vertical-align: -0.125em;\\n text-rendering: optimizeLegibility;\\n -webkit-font-smoothing: antialiased;\\n -moz-osx-font-smoothing: grayscale;\\n}\\n\\n.anticon > * {\\n line-height: 1;\\n}\\n\\n.anticon svg {\\n display: inline-block;\\n}\\n\\n.anticon::before {\\n display: none;\\n}\\n\\n.anticon .anticon-icon {\\n display: block;\\n}\\n\\n.anticon[tabindex] {\\n cursor: pointer;\\n}\\n\\n.anticon-spin::before,\\n.anticon-spin {\\n display: inline-block;\\n -webkit-animation: loadingCircle 1s infinite linear;\\n animation: loadingCircle 1s infinite linear;\\n}\\n\\n@-webkit-keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\\n@keyframes loadingCircle {\\n 100% {\\n -webkit-transform: rotate(360deg);\\n transform: rotate(360deg);\\n }\\n}\\n\";\n\nfunction getRoot(ele) {\n return ele && ele.getRootNode && ele.getRootNode();\n}\n/**\n * Check if is in shadowRoot\n */\n\n\nfunction inShadow(ele) {\n return getRoot(ele) instanceof ShadowRoot;\n}\n/**\n * Return shadowRoot if possible\n */\n\n\nfunction getShadowRoot(ele) {\n return inShadow(ele) ? getRoot(ele) : null;\n}\n\nexport var useInsertStyles = function useInsertStyles() {\n var _useInjectIconContext = useInjectIconContext(),\n prefixCls = _useInjectIconContext.prefixCls,\n csp = _useInjectIconContext.csp;\n\n var instance = getCurrentInstance();\n var mergedStyleStr = iconStyles;\n\n if (prefixCls) {\n mergedStyleStr = mergedStyleStr.replace(/anticon/g, prefixCls.value);\n }\n\n nextTick(function () {\n var ele = instance.vnode.el;\n var shadowRoot = getShadowRoot(ele);\n updateCSS(mergedStyleStr, '@ant-design-vue-icons', {\n prepend: true,\n csp: csp.value,\n attachTo: shadowRoot\n });\n });\n};","var _excluded = [\"icon\", \"primaryColor\", \"secondaryColor\"];\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nimport { generate, getSecondaryColor, isIconDefinition, warning } from '../utils';\nvar twoToneColorPalette = {\n primaryColor: '#333',\n secondaryColor: '#E6E6E6',\n calculated: false\n};\n\nfunction setTwoToneColors(_ref) {\n var primaryColor = _ref.primaryColor,\n secondaryColor = _ref.secondaryColor;\n twoToneColorPalette.primaryColor = primaryColor;\n twoToneColorPalette.secondaryColor = secondaryColor || getSecondaryColor(primaryColor);\n twoToneColorPalette.calculated = !!secondaryColor;\n}\n\nfunction getTwoToneColors() {\n return _objectSpread({}, twoToneColorPalette);\n}\n\nvar IconBase = function IconBase(props, context) {\n var _props$context$attrs = _objectSpread({}, props, context.attrs),\n icon = _props$context$attrs.icon,\n primaryColor = _props$context$attrs.primaryColor,\n secondaryColor = _props$context$attrs.secondaryColor,\n restProps = _objectWithoutProperties(_props$context$attrs, _excluded);\n\n var colors = twoToneColorPalette;\n\n if (primaryColor) {\n colors = {\n primaryColor: primaryColor,\n secondaryColor: secondaryColor || getSecondaryColor(primaryColor)\n };\n }\n\n warning(isIconDefinition(icon), \"icon should be icon definiton, but got \".concat(icon));\n\n if (!isIconDefinition(icon)) {\n return null;\n }\n\n var target = icon;\n\n if (target && typeof target.icon === 'function') {\n target = _objectSpread({}, target, {\n icon: target.icon(colors.primaryColor, colors.secondaryColor)\n });\n }\n\n return generate(target.icon, \"svg-\".concat(target.name), _objectSpread({}, restProps, {\n 'data-icon': target.name,\n width: '1em',\n height: '1em',\n fill: 'currentColor',\n 'aria-hidden': 'true'\n })); // },\n};\n\nIconBase.props = {\n icon: Object,\n primaryColor: String,\n secondaryColor: String,\n focusable: String\n};\nIconBase.inheritAttrs = false;\nIconBase.displayName = 'IconBase';\nIconBase.getTwoToneColors = getTwoToneColors;\nIconBase.setTwoToneColors = setTwoToneColors;\nexport default IconBase;","function _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nimport VueIcon from './IconBase';\nimport { normalizeTwoToneColors } from '../utils';\nexport function setTwoToneColor(twoToneColor) {\n var _normalizeTwoToneColo = normalizeTwoToneColors(twoToneColor),\n _normalizeTwoToneColo2 = _slicedToArray(_normalizeTwoToneColo, 2),\n primaryColor = _normalizeTwoToneColo2[0],\n secondaryColor = _normalizeTwoToneColo2[1];\n\n return VueIcon.setTwoToneColors({\n primaryColor: primaryColor,\n secondaryColor: secondaryColor\n });\n}\nexport function getTwoToneColor() {\n var colors = VueIcon.getTwoToneColors();\n\n if (!colors.calculated) {\n return colors.primaryColor;\n }\n\n return [colors.primaryColor, colors.secondaryColor];\n}","import { defineComponent } from 'vue';\nimport { useInsertStyles } from '../utils';\nexport var InsertStyles = defineComponent({\n name: 'InsertStyles',\n setup: function setup() {\n useInsertStyles();\n return function () {\n return null;\n };\n }\n});","var _excluded = [\"class\", \"icon\", \"spin\", \"rotate\", \"tabindex\", \"twoToneColor\", \"onClick\"];\nimport { createVNode as _createVNode } from \"vue\";\n\nfunction _slicedToArray(arr, i) { return _arrayWithHoles(arr) || _iterableToArrayLimit(arr, i) || _unsupportedIterableToArray(arr, i) || _nonIterableRest(); }\n\nfunction _nonIterableRest() { throw new TypeError(\"Invalid attempt to destructure non-iterable instance.\\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.\"); }\n\nfunction _unsupportedIterableToArray(o, minLen) { if (!o) return; if (typeof o === \"string\") return _arrayLikeToArray(o, minLen); var n = Object.prototype.toString.call(o).slice(8, -1); if (n === \"Object\" && o.constructor) n = o.constructor.name; if (n === \"Map\" || n === \"Set\") return Array.from(o); if (n === \"Arguments\" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return _arrayLikeToArray(o, minLen); }\n\nfunction _arrayLikeToArray(arr, len) { if (len == null || len > arr.length) len = arr.length; for (var i = 0, arr2 = new Array(len); i < len; i++) { arr2[i] = arr[i]; } return arr2; }\n\nfunction _iterableToArrayLimit(arr, i) { var _i = arr == null ? null : typeof Symbol !== \"undefined\" && arr[Symbol.iterator] || arr[\"@@iterator\"]; if (_i == null) return; var _arr = []; var _n = true; var _d = false; var _s, _e; try { for (_i = _i.call(arr); !(_n = (_s = _i.next()).done); _n = true) { _arr.push(_s.value); if (i && _arr.length === i) break; } } catch (err) { _d = true; _e = err; } finally { try { if (!_n && _i[\"return\"] != null) _i[\"return\"](); } finally { if (_d) throw _e; } } return _arr; }\n\nfunction _arrayWithHoles(arr) { if (Array.isArray(arr)) return arr; }\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\nfunction _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }\n\nfunction _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }\n\nimport VueIcon from './IconBase';\nimport { getTwoToneColor, setTwoToneColor } from './twoTonePrimaryColor';\nimport { normalizeTwoToneColors } from '../utils';\nimport { blue } from '@ant-design/colors';\nimport { useInjectIconContext } from './Context';\nimport { InsertStyles } from './InsertStyle'; // Initial setting\n\nsetTwoToneColor(blue.primary);\n\nvar Icon = function Icon(props, context) {\n var _classObj;\n\n var _props$context$attrs = _objectSpread({}, props, context.attrs),\n cls = _props$context$attrs[\"class\"],\n icon = _props$context$attrs.icon,\n spin = _props$context$attrs.spin,\n rotate = _props$context$attrs.rotate,\n tabindex = _props$context$attrs.tabindex,\n twoToneColor = _props$context$attrs.twoToneColor,\n onClick = _props$context$attrs.onClick,\n restProps = _objectWithoutProperties(_props$context$attrs, _excluded);\n\n var _useInjectIconContext = useInjectIconContext(),\n prefixCls = _useInjectIconContext.prefixCls,\n rootClassName = _useInjectIconContext.rootClassName;\n\n var classObj = (_classObj = {}, _defineProperty(_classObj, rootClassName.value, !!rootClassName.value), _defineProperty(_classObj, prefixCls.value, true), _defineProperty(_classObj, \"\".concat(prefixCls.value, \"-\").concat(icon.name), Boolean(icon.name)), _defineProperty(_classObj, \"\".concat(prefixCls.value, \"-spin\"), !!spin || icon.name === 'loading'), _classObj);\n var iconTabIndex = tabindex;\n\n if (iconTabIndex === undefined && onClick) {\n iconTabIndex = -1;\n }\n\n var svgStyle = rotate ? {\n msTransform: \"rotate(\".concat(rotate, \"deg)\"),\n transform: \"rotate(\".concat(rotate, \"deg)\")\n } : undefined;\n\n var _normalizeTwoToneColo = normalizeTwoToneColors(twoToneColor),\n _normalizeTwoToneColo2 = _slicedToArray(_normalizeTwoToneColo, 2),\n primaryColor = _normalizeTwoToneColo2[0],\n secondaryColor = _normalizeTwoToneColo2[1];\n\n return _createVNode(\"span\", _objectSpread({\n \"role\": \"img\",\n \"aria-label\": icon.name\n }, restProps, {\n \"onClick\": onClick,\n \"class\": [classObj, cls],\n \"tabindex\": iconTabIndex\n }), [_createVNode(VueIcon, {\n \"icon\": icon,\n \"primaryColor\": primaryColor,\n \"secondaryColor\": secondaryColor,\n \"style\": svgStyle\n }, null), _createVNode(InsertStyles, null, null)]);\n};\n\nIcon.props = {\n spin: Boolean,\n rotate: Number,\n icon: Object,\n twoToneColor: String\n};\nIcon.displayName = 'AntdIcon';\nIcon.inheritAttrs = false;\nIcon.getTwoToneColor = getTwoToneColor;\nIcon.setTwoToneColor = setTwoToneColor;\nexport default Icon;","import { createVNode as _createVNode } from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport LoadingOutlinedSvg from \"@ant-design/icons-svg/es/asn/LoadingOutlined\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar LoadingOutlined = function LoadingOutlined(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _createVNode(AntdIcon, _objectSpread({}, p, {\n \"icon\": LoadingOutlinedSvg\n }), null);\n};\n\nLoadingOutlined.displayName = 'LoadingOutlined';\nLoadingOutlined.inheritAttrs = false;\nexport default LoadingOutlined;","// This icon file is generated automatically.\nvar CloseCircleFilled = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm165.4 618.2l-66-.3L512 563.4l-99.3 118.4-66.1.3c-4.4 0-8-3.5-8-8 0-1.9.7-3.7 1.9-5.2l130.1-155L340.5 359a8.32 8.32 0 01-1.9-5.2c0-4.4 3.6-8 8-8l66.1.3L512 464.6l99.3-118.4 66-.3c4.4 0 8 3.5 8 8 0 1.9-.7 3.7-1.9 5.2L553.5 514l130 155c1.2 1.5 1.9 3.3 1.9 5.2 0 4.4-3.6 8-8 8z\" } }] }, \"name\": \"close-circle\", \"theme\": \"filled\" };\nexport default CloseCircleFilled;\n","import { createVNode as _createVNode } from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport CloseCircleFilledSvg from \"@ant-design/icons-svg/es/asn/CloseCircleFilled\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar CloseCircleFilled = function CloseCircleFilled(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _createVNode(AntdIcon, _objectSpread({}, p, {\n \"icon\": CloseCircleFilledSvg\n }), null);\n};\n\nCloseCircleFilled.displayName = 'CloseCircleFilled';\nCloseCircleFilled.inheritAttrs = false;\nexport default CloseCircleFilled;","// This icon file is generated automatically.\nvar CheckCircleFilled = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm193.5 301.7l-210.6 292a31.8 31.8 0 01-51.7 0L318.5 484.9c-3.8-5.3 0-12.7 6.5-12.7h46.9c10.2 0 19.9 4.9 25.9 13.3l71.2 98.8 157.2-218c6-8.3 15.6-13.3 25.9-13.3H699c6.5 0 10.3 7.4 6.5 12.7z\" } }] }, \"name\": \"check-circle\", \"theme\": \"filled\" };\nexport default CheckCircleFilled;\n","import { createVNode as _createVNode } from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport CheckCircleFilledSvg from \"@ant-design/icons-svg/es/asn/CheckCircleFilled\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar CheckCircleFilled = function CheckCircleFilled(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _createVNode(AntdIcon, _objectSpread({}, p, {\n \"icon\": CheckCircleFilledSvg\n }), null);\n};\n\nCheckCircleFilled.displayName = 'CheckCircleFilled';\nCheckCircleFilled.inheritAttrs = false;\nexport default CheckCircleFilled;","// This icon file is generated automatically.\nvar ExclamationCircleFilled = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm-32 232c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v272c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V296zm32 440a48.01 48.01 0 010-96 48.01 48.01 0 010 96z\" } }] }, \"name\": \"exclamation-circle\", \"theme\": \"filled\" };\nexport default ExclamationCircleFilled;\n","import { createVNode as _createVNode } from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport ExclamationCircleFilledSvg from \"@ant-design/icons-svg/es/asn/ExclamationCircleFilled\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar ExclamationCircleFilled = function ExclamationCircleFilled(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _createVNode(AntdIcon, _objectSpread({}, p, {\n \"icon\": ExclamationCircleFilledSvg\n }), null);\n};\n\nExclamationCircleFilled.displayName = 'ExclamationCircleFilled';\nExclamationCircleFilled.inheritAttrs = false;\nexport default ExclamationCircleFilled;","/* eslint-disable */\n// Inspired by https://github.com/garycourt/murmurhash-js\n// Ported from https://github.com/aappleby/smhasher/blob/61a0530f28277f2e850bfc39600ce61d02b518de/src/MurmurHash2.cpp#L37-L86\nfunction murmur2(str) {\n // 'm' and 'r' are mixing constants generated offline.\n // They're not really 'magic', they just happen to work well.\n // const m = 0x5bd1e995;\n // const r = 24;\n // Initialize the hash\n var h = 0; // Mix 4 bytes at a time into the hash\n\n var k,\n i = 0,\n len = str.length;\n\n for (; len >= 4; ++i, len -= 4) {\n k = str.charCodeAt(i) & 0xff | (str.charCodeAt(++i) & 0xff) << 8 | (str.charCodeAt(++i) & 0xff) << 16 | (str.charCodeAt(++i) & 0xff) << 24;\n k =\n /* Math.imul(k, m): */\n (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16);\n k ^=\n /* k >>> r: */\n k >>> 24;\n h =\n /* Math.imul(k, m): */\n (k & 0xffff) * 0x5bd1e995 + ((k >>> 16) * 0xe995 << 16) ^\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n } // Handle the last few bytes of the input array\n\n\n switch (len) {\n case 3:\n h ^= (str.charCodeAt(i + 2) & 0xff) << 16;\n\n case 2:\n h ^= (str.charCodeAt(i + 1) & 0xff) << 8;\n\n case 1:\n h ^= str.charCodeAt(i) & 0xff;\n h =\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n } // Do a few final mixes of the hash to ensure the last few\n // bytes are well-incorporated.\n\n\n h ^= h >>> 13;\n h =\n /* Math.imul(h, m): */\n (h & 0xffff) * 0x5bd1e995 + ((h >>> 16) * 0xe995 << 16);\n return ((h ^ h >>> 15) >>> 0).toString(36);\n}\n\nexport { murmur2 as default };\n","const SPLIT = '%';\nclass Entity {\n constructor(instanceId) {\n /** @private Internal cache map. Do not access this directly */\n this.cache = new Map();\n this.instanceId = instanceId;\n }\n get(keys) {\n return this.cache.get(Array.isArray(keys) ? keys.join(SPLIT) : keys) || null;\n }\n update(keys, valueFn) {\n const path = Array.isArray(keys) ? keys.join(SPLIT) : keys;\n const prevValue = this.cache.get(path);\n const nextValue = valueFn(prevValue);\n if (nextValue === null) {\n this.cache.delete(path);\n } else {\n this.cache.set(path, nextValue);\n }\n }\n}\nexport default Entity;","// https://stackoverflow.com/questions/46176165/ways-to-get-string-literal-type-of-array-values-without-enum-overhead\nexport const tuple = function () {\n for (var _len = arguments.length, args = new Array(_len), _key = 0; _key < _len; _key++) {\n args[_key] = arguments[_key];\n }\n return args;\n};\nexport const tupleNum = function () {\n for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {\n args[_key2] = arguments[_key2];\n }\n return args;\n};\nexport const withInstall = comp => {\n const c = comp;\n c.install = function (app) {\n app.component(c.displayName || c.name, comp);\n };\n return comp;\n};\nexport function eventType() {\n return {\n type: [Function, Array]\n };\n}\nexport function objectType(defaultVal) {\n return {\n type: Object,\n default: defaultVal\n };\n}\nexport function booleanType(defaultVal) {\n return {\n type: Boolean,\n default: defaultVal\n };\n}\nexport function functionType(defaultVal) {\n return {\n type: Function,\n default: defaultVal\n };\n}\nexport function anyType(defaultVal, required) {\n const type = {\n validator: () => true,\n default: defaultVal\n };\n return required ? type : type;\n}\nexport function vNodeType() {\n return {\n validator: () => true\n };\n}\nexport function arrayType(defaultVal) {\n return {\n type: Array,\n default: defaultVal\n };\n}\nexport function stringType(defaultVal) {\n return {\n type: String,\n default: defaultVal\n };\n}\nexport function someType(types, defaultVal) {\n return types ? {\n type: types,\n default: defaultVal\n } : anyType(defaultVal);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { provide, defineComponent, unref, inject, watch, shallowRef, getCurrentInstance } from 'vue';\nimport CacheEntity from './Cache';\nimport { arrayType, booleanType, objectType, someType, stringType, withInstall } from '../type';\nexport const ATTR_TOKEN = 'data-token-hash';\nexport const ATTR_MARK = 'data-css-hash';\nexport const ATTR_CACHE_PATH = 'data-cache-path';\n// Mark css-in-js instance in style element\nexport const CSS_IN_JS_INSTANCE = '__cssinjs_instance__';\nexport function createCache() {\n const cssinjsInstanceId = Math.random().toString(12).slice(2);\n // Tricky SSR: Move all inline style to the head.\n // PS: We do not recommend tricky mode.\n if (typeof document !== 'undefined' && document.head && document.body) {\n const styles = document.body.querySelectorAll(`style[${ATTR_MARK}]`) || [];\n const {\n firstChild\n } = document.head;\n Array.from(styles).forEach(style => {\n style[CSS_IN_JS_INSTANCE] = style[CSS_IN_JS_INSTANCE] || cssinjsInstanceId;\n // Not force move if no head\n // Not force move if no head\n if (style[CSS_IN_JS_INSTANCE] === cssinjsInstanceId) {\n document.head.insertBefore(style, firstChild);\n }\n });\n // Deduplicate of moved styles\n const styleHash = {};\n Array.from(document.querySelectorAll(`style[${ATTR_MARK}]`)).forEach(style => {\n var _a;\n const hash = style.getAttribute(ATTR_MARK);\n if (styleHash[hash]) {\n if (style[CSS_IN_JS_INSTANCE] === cssinjsInstanceId) {\n (_a = style.parentNode) === null || _a === void 0 ? void 0 : _a.removeChild(style);\n }\n } else {\n styleHash[hash] = true;\n }\n });\n }\n return new CacheEntity(cssinjsInstanceId);\n}\nconst StyleContextKey = Symbol('StyleContextKey');\n// fix: https://github.com/vueComponent/ant-design-vue/issues/7023\nconst getCache = () => {\n var _a, _b, _c;\n const instance = getCurrentInstance();\n let cache;\n if (instance && instance.appContext) {\n const globalCache = (_c = (_b = (_a = instance.appContext) === null || _a === void 0 ? void 0 : _a.config) === null || _b === void 0 ? void 0 : _b.globalProperties) === null || _c === void 0 ? void 0 : _c.__ANTDV_CSSINJS_CACHE__;\n if (globalCache) {\n cache = globalCache;\n } else {\n cache = createCache();\n if (instance.appContext.config.globalProperties) {\n instance.appContext.config.globalProperties.__ANTDV_CSSINJS_CACHE__ = cache;\n }\n }\n } else {\n cache = createCache();\n }\n return cache;\n};\nconst defaultStyleContext = {\n cache: createCache(),\n defaultCache: true,\n hashPriority: 'low'\n};\n// fix: https://github.com/vueComponent/ant-design-vue/issues/6912\nexport const useStyleInject = () => {\n const cache = getCache();\n return inject(StyleContextKey, shallowRef(_extends(_extends({}, defaultStyleContext), {\n cache\n })));\n};\nexport const useStyleProvider = props => {\n const parentContext = useStyleInject();\n const context = shallowRef(_extends(_extends({}, defaultStyleContext), {\n cache: createCache()\n }));\n watch([() => unref(props), parentContext], () => {\n const mergedContext = _extends({}, parentContext.value);\n const propsValue = unref(props);\n Object.keys(propsValue).forEach(key => {\n const value = propsValue[key];\n if (propsValue[key] !== undefined) {\n mergedContext[key] = value;\n }\n });\n const {\n cache\n } = propsValue;\n mergedContext.cache = mergedContext.cache || createCache();\n mergedContext.defaultCache = !cache && parentContext.value.defaultCache;\n context.value = mergedContext;\n }, {\n immediate: true\n });\n provide(StyleContextKey, context);\n return context;\n};\nexport const styleProviderProps = () => ({\n autoClear: booleanType(),\n /** @private Test only. Not work in production. */\n mock: stringType(),\n /**\n * Only set when you need ssr to extract style on you own.\n * If not provided, it will auto create <style /> on the end of Provider in server side.\n */\n cache: objectType(),\n /** Tell children that this context is default generated context */\n defaultCache: booleanType(),\n /** Use `:where` selector to reduce hashId css selector priority */\n hashPriority: stringType(),\n /** Tell cssinjs where to inject style in */\n container: someType(),\n /** Component wil render inline `<style />` for fallback in SSR. Not recommend. */\n ssrInline: booleanType(),\n /** Transform css before inject in document. Please note that `transformers` do not support dynamic update */\n transformers: arrayType(),\n /**\n * Linters to lint css before inject in document.\n * Styles will be linted after transforming.\n * Please note that `linters` do not support dynamic update.\n */\n linters: arrayType()\n});\nexport const StyleProvider = withInstall(defineComponent({\n name: 'AStyleProvider',\n inheritAttrs: false,\n props: styleProviderProps(),\n setup(props, _ref) {\n let {\n slots\n } = _ref;\n useStyleProvider(props);\n return () => {\n var _a;\n return (_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots);\n };\n }\n}));\nexport default {\n useStyleInject,\n useStyleProvider,\n StyleProvider\n};","function useProdHMR() {\n return false;\n}\nlet webpackHMR = false;\nfunction useDevHMR() {\n return webpackHMR;\n}\nexport default process.env.NODE_ENV === 'production' ? useProdHMR : useDevHMR;\n// Webpack `module.hot.accept` do not support any deps update trigger\n// We have to hack handler to force mark as HRM\nif (process.env.NODE_ENV !== 'production' && typeof module !== 'undefined' && module && module.hot && typeof window !== 'undefined') {\n const win = window;\n if (typeof win.webpackHotUpdate === 'function') {\n const originWebpackHotUpdate = win.webpackHotUpdate;\n win.webpackHotUpdate = function () {\n webpackHMR = true;\n setTimeout(() => {\n webpackHMR = false;\n }, 0);\n return originWebpackHotUpdate(...arguments);\n };\n }\n}","import { useStyleInject } from '../StyleContext';\nimport useHMR from './useHMR';\nimport { onBeforeUnmount, watch, watchEffect, shallowRef } from 'vue';\nexport default function useClientCache(prefix, keyPath, cacheFn, onCacheRemove) {\n const styleContext = useStyleInject();\n const fullPathStr = shallowRef('');\n const res = shallowRef();\n watchEffect(() => {\n fullPathStr.value = [prefix, ...keyPath.value].join('%');\n });\n const HMRUpdate = useHMR();\n const clearCache = pathStr => {\n styleContext.value.cache.update(pathStr, prevCache => {\n const [times = 0, cache] = prevCache || [];\n const nextCount = times - 1;\n if (nextCount === 0) {\n onCacheRemove === null || onCacheRemove === void 0 ? void 0 : onCacheRemove(cache, false);\n return null;\n }\n return [times - 1, cache];\n });\n };\n watch(fullPathStr, (newStr, oldStr) => {\n if (oldStr) clearCache(oldStr);\n // Create cache\n styleContext.value.cache.update(newStr, prevCache => {\n const [times = 0, cache] = prevCache || [];\n // HMR should always ignore cache since developer may change it\n let tmpCache = cache;\n if (process.env.NODE_ENV !== 'production' && cache && HMRUpdate) {\n onCacheRemove === null || onCacheRemove === void 0 ? void 0 : onCacheRemove(tmpCache, HMRUpdate);\n tmpCache = null;\n }\n const mergedCache = tmpCache || cacheFn();\n return [times + 1, mergedCache];\n });\n res.value = styleContext.value.cache.get(fullPathStr.value)[1];\n }, {\n immediate: true\n });\n onBeforeUnmount(() => {\n clearCache(fullPathStr.value);\n });\n return res;\n}","function canUseDom() {\n return !!(typeof window !== 'undefined' && window.document && window.document.createElement);\n}\nexport default canUseDom;","export default function contains(root, n) {\n if (!root) {\n return false;\n }\n // Use native if support\n if (root.contains) {\n return root.contains(n);\n }\n return false;\n}","import canUseDom from '../../_util/canUseDom';\nimport contains from './contains';\nconst APPEND_ORDER = 'data-vc-order';\nconst MARK_KEY = `vc-util-key`;\nconst containerCache = new Map();\nfunction getMark() {\n let {\n mark\n } = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n if (mark) {\n return mark.startsWith('data-') ? mark : `data-${mark}`;\n }\n return MARK_KEY;\n}\nfunction getContainer(option) {\n if (option.attachTo) {\n return option.attachTo;\n }\n const head = document.querySelector('head');\n return head || document.body;\n}\nfunction getOrder(prepend) {\n if (prepend === 'queue') {\n return 'prependQueue';\n }\n return prepend ? 'prepend' : 'append';\n}\n/**\n * Find style which inject by rc-util\n */\nfunction findStyles(container) {\n return Array.from((containerCache.get(container) || container).children).filter(node => node.tagName === 'STYLE');\n}\nexport function injectCSS(css) {\n let option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n if (!canUseDom()) {\n return null;\n }\n const {\n csp,\n prepend\n } = option;\n const styleNode = document.createElement('style');\n styleNode.setAttribute(APPEND_ORDER, getOrder(prepend));\n if (csp === null || csp === void 0 ? void 0 : csp.nonce) {\n styleNode.nonce = csp === null || csp === void 0 ? void 0 : csp.nonce;\n }\n styleNode.innerHTML = css;\n const container = getContainer(option);\n const {\n firstChild\n } = container;\n if (prepend) {\n // If is queue `prepend`, it will prepend first style and then append rest style\n if (prepend === 'queue') {\n const existStyle = findStyles(container).filter(node => ['prepend', 'prependQueue'].includes(node.getAttribute(APPEND_ORDER)));\n if (existStyle.length) {\n container.insertBefore(styleNode, existStyle[existStyle.length - 1].nextSibling);\n return styleNode;\n }\n }\n // Use `insertBefore` as `prepend`\n container.insertBefore(styleNode, firstChild);\n } else {\n container.appendChild(styleNode);\n }\n return styleNode;\n}\nfunction findExistNode(key) {\n let option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const container = getContainer(option);\n return findStyles(container).find(node => node.getAttribute(getMark(option)) === key);\n}\nexport function removeCSS(key) {\n let option = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const existNode = findExistNode(key, option);\n if (existNode) {\n const container = getContainer(option);\n container.removeChild(existNode);\n }\n}\n/**\n * qiankun will inject `appendChild` to insert into other\n */\nfunction syncRealContainer(container, option) {\n const cachedRealContainer = containerCache.get(container);\n // Find real container when not cached or cached container removed\n if (!cachedRealContainer || !contains(document, cachedRealContainer)) {\n const placeholderStyle = injectCSS('', option);\n const {\n parentNode\n } = placeholderStyle;\n containerCache.set(container, parentNode);\n container.removeChild(placeholderStyle);\n }\n}\n/**\n * manually clear container cache to avoid global cache in unit testes\n */\nexport function clearContainerCache() {\n containerCache.clear();\n}\nexport function updateCSS(css, key) {\n let option = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {};\n var _a, _b, _c;\n const container = getContainer(option);\n // Sync real parent\n syncRealContainer(container, option);\n const existNode = findExistNode(key, option);\n if (existNode) {\n if (((_a = option.csp) === null || _a === void 0 ? void 0 : _a.nonce) && existNode.nonce !== ((_b = option.csp) === null || _b === void 0 ? void 0 : _b.nonce)) {\n existNode.nonce = (_c = option.csp) === null || _c === void 0 ? void 0 : _c.nonce;\n }\n if (existNode.innerHTML !== css) {\n existNode.innerHTML = css;\n }\n return existNode;\n }\n const newNode = injectCSS(css, option);\n newNode.setAttribute(getMark(option), key);\n return newNode;\n}","export function sameDerivativeOption(left, right) {\n if (left.length !== right.length) {\n return false;\n }\n for (let i = 0; i < left.length; i++) {\n if (left[i] !== right[i]) {\n return false;\n }\n }\n return true;\n}\nexport default class ThemeCache {\n constructor() {\n this.cache = new Map();\n this.keys = [];\n this.cacheCallTimes = 0;\n }\n size() {\n return this.keys.length;\n }\n internalGet(derivativeOption) {\n let updateCallTimes = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n let cache = {\n map: this.cache\n };\n derivativeOption.forEach(derivative => {\n var _a;\n if (!cache) {\n cache = undefined;\n } else {\n cache = (_a = cache === null || cache === void 0 ? void 0 : cache.map) === null || _a === void 0 ? void 0 : _a.get(derivative);\n }\n });\n if ((cache === null || cache === void 0 ? void 0 : cache.value) && updateCallTimes) {\n cache.value[1] = this.cacheCallTimes++;\n }\n return cache === null || cache === void 0 ? void 0 : cache.value;\n }\n get(derivativeOption) {\n var _a;\n return (_a = this.internalGet(derivativeOption, true)) === null || _a === void 0 ? void 0 : _a[0];\n }\n has(derivativeOption) {\n return !!this.internalGet(derivativeOption);\n }\n set(derivativeOption, value) {\n // New cache\n if (!this.has(derivativeOption)) {\n if (this.size() + 1 > ThemeCache.MAX_CACHE_SIZE + ThemeCache.MAX_CACHE_OFFSET) {\n const [targetKey] = this.keys.reduce((result, key) => {\n const [, callTimes] = result;\n if (this.internalGet(key)[1] < callTimes) {\n return [key, this.internalGet(key)[1]];\n }\n return result;\n }, [this.keys[0], this.cacheCallTimes]);\n this.delete(targetKey);\n }\n this.keys.push(derivativeOption);\n }\n let cache = this.cache;\n derivativeOption.forEach((derivative, index) => {\n if (index === derivativeOption.length - 1) {\n cache.set(derivative, {\n value: [value, this.cacheCallTimes++]\n });\n } else {\n const cacheValue = cache.get(derivative);\n if (!cacheValue) {\n cache.set(derivative, {\n map: new Map()\n });\n } else if (!cacheValue.map) {\n cacheValue.map = new Map();\n }\n cache = cache.get(derivative).map;\n }\n });\n }\n deleteByPath(currentCache, derivatives) {\n var _a;\n const cache = currentCache.get(derivatives[0]);\n if (derivatives.length === 1) {\n if (!cache.map) {\n currentCache.delete(derivatives[0]);\n } else {\n currentCache.set(derivatives[0], {\n map: cache.map\n });\n }\n return (_a = cache.value) === null || _a === void 0 ? void 0 : _a[0];\n }\n const result = this.deleteByPath(cache.map, derivatives.slice(1));\n if ((!cache.map || cache.map.size === 0) && !cache.value) {\n currentCache.delete(derivatives[0]);\n }\n return result;\n }\n delete(derivativeOption) {\n // If cache exists\n if (this.has(derivativeOption)) {\n this.keys = this.keys.filter(item => !sameDerivativeOption(item, derivativeOption));\n return this.deleteByPath(this.cache, derivativeOption);\n }\n return undefined;\n }\n}\nThemeCache.MAX_CACHE_SIZE = 20;\nThemeCache.MAX_CACHE_OFFSET = 5;","import warning from '../../warning';\nlet uuid = 0;\n/**\n * Theme with algorithms to derive tokens from design tokens.\n * Use `createTheme` first which will help to manage the theme instance cache.\n */\nexport default class Theme {\n constructor(derivatives) {\n this.derivatives = Array.isArray(derivatives) ? derivatives : [derivatives];\n this.id = uuid;\n if (derivatives.length === 0) {\n warning(derivatives.length > 0, '[Ant Design Vue CSS-in-JS] Theme should have at least one derivative function.');\n }\n uuid += 1;\n }\n getDerivativeToken(token) {\n return this.derivatives.reduce((result, derivative) => derivative(token, result), undefined);\n }\n}","import ThemeCache from './ThemeCache';\nimport Theme from './Theme';\nconst cacheThemes = new ThemeCache();\n/**\n * Same as new Theme, but will always return same one if `derivative` not changed.\n */\nexport default function createTheme(derivatives) {\n const derivativeArr = Array.isArray(derivatives) ? derivatives : [derivatives];\n // Create new theme if not exist\n if (!cacheThemes.has(derivativeArr)) {\n cacheThemes.set(derivativeArr, new Theme(derivativeArr));\n }\n // Get theme from cache and return\n return cacheThemes.get(derivativeArr);\n}","import hash from '@emotion/hash';\nimport { removeCSS, updateCSS } from '../../vc-util/Dom/dynamicCSS';\nimport canUseDom from '../canUseDom';\nimport { Theme } from './theme';\n// Create a cache here to avoid always loop generate\nconst flattenTokenCache = new WeakMap();\nexport function flattenToken(token) {\n let str = flattenTokenCache.get(token) || '';\n if (!str) {\n Object.keys(token).forEach(key => {\n const value = token[key];\n str += key;\n if (value instanceof Theme) {\n str += value.id;\n } else if (value && typeof value === 'object') {\n str += flattenToken(value);\n } else {\n str += value;\n }\n });\n // Put in cache\n flattenTokenCache.set(token, str);\n }\n return str;\n}\n/**\n * Convert derivative token to key string\n */\nexport function token2key(token, salt) {\n return hash(`${salt}_${flattenToken(token)}`);\n}\nconst randomSelectorKey = `random-${Date.now()}-${Math.random()}`.replace(/\\./g, '');\n// Magic `content` for detect selector support\nconst checkContent = '_bAmBoO_';\nfunction supportSelector(styleStr, handleElement, supportCheck) {\n var _a, _b;\n if (canUseDom()) {\n updateCSS(styleStr, randomSelectorKey);\n const ele = document.createElement('div');\n ele.style.position = 'fixed';\n ele.style.left = '0';\n ele.style.top = '0';\n handleElement === null || handleElement === void 0 ? void 0 : handleElement(ele);\n document.body.appendChild(ele);\n if (process.env.NODE_ENV !== 'production') {\n ele.innerHTML = 'Test';\n ele.style.zIndex = '9999999';\n }\n const support = supportCheck ? supportCheck(ele) : (_a = getComputedStyle(ele).content) === null || _a === void 0 ? void 0 : _a.includes(checkContent);\n (_b = ele.parentNode) === null || _b === void 0 ? void 0 : _b.removeChild(ele);\n removeCSS(randomSelectorKey);\n return support;\n }\n return false;\n}\nlet canLayer = undefined;\nexport function supportLayer() {\n if (canLayer === undefined) {\n canLayer = supportSelector(`@layer ${randomSelectorKey} { .${randomSelectorKey} { content: \"${checkContent}\"!important; } }`, ele => {\n ele.className = randomSelectorKey;\n });\n }\n return canLayer;\n}\nlet canWhere = undefined;\nexport function supportWhere() {\n if (canWhere === undefined) {\n canWhere = supportSelector(`:where(.${randomSelectorKey}) { content: \"${checkContent}\"!important; }`, ele => {\n ele.className = randomSelectorKey;\n });\n }\n return canWhere;\n}\nlet canLogic = undefined;\nexport function supportLogicProps() {\n if (canLogic === undefined) {\n canLogic = supportSelector(`.${randomSelectorKey} { inset-block: 93px !important; }`, ele => {\n ele.className = randomSelectorKey;\n }, ele => getComputedStyle(ele).bottom === '93px');\n }\n return canLogic;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport hash from '@emotion/hash';\nimport { ATTR_TOKEN, CSS_IN_JS_INSTANCE, useStyleInject } from '../StyleContext';\nimport useGlobalCache from './useGlobalCache';\nimport { flattenToken, token2key } from '../util';\nimport { ref, computed } from 'vue';\nconst EMPTY_OVERRIDE = {};\nconst isProduction = process.env.NODE_ENV === 'production';\n// nuxt generate when NODE_ENV is prerender\nconst isPrerender = process.env.NODE_ENV === 'prerender';\n// Generate different prefix to make user selector break in production env.\n// This helps developer not to do style override directly on the hash id.\nconst hashPrefix = !isProduction && !isPrerender ? 'css-dev-only-do-not-override' : 'css';\nconst tokenKeys = new Map();\nfunction recordCleanToken(tokenKey) {\n tokenKeys.set(tokenKey, (tokenKeys.get(tokenKey) || 0) + 1);\n}\nfunction removeStyleTags(key, instanceId) {\n if (typeof document !== 'undefined') {\n const styles = document.querySelectorAll(`style[${ATTR_TOKEN}=\"${key}\"]`);\n styles.forEach(style => {\n var _a;\n if (style[CSS_IN_JS_INSTANCE] === instanceId) {\n (_a = style.parentNode) === null || _a === void 0 ? void 0 : _a.removeChild(style);\n }\n });\n }\n}\nconst TOKEN_THRESHOLD = 0;\n// Remove will check current keys first\nfunction cleanTokenStyle(tokenKey, instanceId) {\n tokenKeys.set(tokenKey, (tokenKeys.get(tokenKey) || 0) - 1);\n const tokenKeyList = Array.from(tokenKeys.keys());\n const cleanableKeyList = tokenKeyList.filter(key => {\n const count = tokenKeys.get(key) || 0;\n return count <= 0;\n });\n // Should keep tokens under threshold for not to insert style too often\n if (tokenKeyList.length - cleanableKeyList.length > TOKEN_THRESHOLD) {\n cleanableKeyList.forEach(key => {\n removeStyleTags(key, instanceId);\n tokenKeys.delete(key);\n });\n }\n}\nexport const getComputedToken = (originToken, overrideToken, theme, format) => {\n const derivativeToken = theme.getDerivativeToken(originToken);\n // Merge with override\n let mergedDerivativeToken = _extends(_extends({}, derivativeToken), overrideToken);\n // Format if needed\n if (format) {\n mergedDerivativeToken = format(mergedDerivativeToken);\n }\n return mergedDerivativeToken;\n};\n/**\n * Cache theme derivative token as global shared one\n * @param theme Theme entity\n * @param tokens List of tokens, used for cache. Please do not dynamic generate object directly\n * @param option Additional config\n * @returns Call Theme.getDerivativeToken(tokenObject) to get token\n */\nexport default function useCacheToken(theme, tokens) {\n let option = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : ref({});\n const style = useStyleInject();\n // Basic - We do basic cache here\n const mergedToken = computed(() => _extends({}, ...tokens.value));\n const tokenStr = computed(() => flattenToken(mergedToken.value));\n const overrideTokenStr = computed(() => flattenToken(option.value.override || EMPTY_OVERRIDE));\n const cachedToken = useGlobalCache('token', computed(() => [option.value.salt || '', theme.value.id, tokenStr.value, overrideTokenStr.value]), () => {\n const {\n salt = '',\n override = EMPTY_OVERRIDE,\n formatToken,\n getComputedToken: compute\n } = option.value;\n const mergedDerivativeToken = compute ? compute(mergedToken.value, override, theme.value) : getComputedToken(mergedToken.value, override, theme.value, formatToken);\n // Optimize for `useStyleRegister` performance\n const tokenKey = token2key(mergedDerivativeToken, salt);\n mergedDerivativeToken._tokenKey = tokenKey;\n recordCleanToken(tokenKey);\n const hashId = `${hashPrefix}-${hash(tokenKey)}`;\n mergedDerivativeToken._hashId = hashId; // Not used\n return [mergedDerivativeToken, hashId];\n }, cache => {\n var _a;\n // Remove token will remove all related style\n cleanTokenStyle(cache[0]._tokenKey, (_a = style.value) === null || _a === void 0 ? void 0 : _a.cache.instanceId);\n });\n return cachedToken;\n}","var unitlessKeys = {\n animationIterationCount: 1,\n aspectRatio: 1,\n borderImageOutset: 1,\n borderImageSlice: 1,\n borderImageWidth: 1,\n boxFlex: 1,\n boxFlexGroup: 1,\n boxOrdinalGroup: 1,\n columnCount: 1,\n columns: 1,\n flex: 1,\n flexGrow: 1,\n flexPositive: 1,\n flexShrink: 1,\n flexNegative: 1,\n flexOrder: 1,\n gridRow: 1,\n gridRowEnd: 1,\n gridRowSpan: 1,\n gridRowStart: 1,\n gridColumn: 1,\n gridColumnEnd: 1,\n gridColumnSpan: 1,\n gridColumnStart: 1,\n msGridRow: 1,\n msGridRowSpan: 1,\n msGridColumn: 1,\n msGridColumnSpan: 1,\n fontWeight: 1,\n lineHeight: 1,\n opacity: 1,\n order: 1,\n orphans: 1,\n tabSize: 1,\n widows: 1,\n zIndex: 1,\n zoom: 1,\n WebkitLineClamp: 1,\n // SVG-related properties\n fillOpacity: 1,\n floodOpacity: 1,\n stopOpacity: 1,\n strokeDasharray: 1,\n strokeDashoffset: 1,\n strokeMiterlimit: 1,\n strokeOpacity: 1,\n strokeWidth: 1\n};\n\nexport { unitlessKeys as default };\n","export var MS = '-ms-'\nexport var MOZ = '-moz-'\nexport var WEBKIT = '-webkit-'\n\nexport var COMMENT = 'comm'\nexport var RULESET = 'rule'\nexport var DECLARATION = 'decl'\n\nexport var PAGE = '@page'\nexport var MEDIA = '@media'\nexport var IMPORT = '@import'\nexport var CHARSET = '@charset'\nexport var VIEWPORT = '@viewport'\nexport var SUPPORTS = '@supports'\nexport var DOCUMENT = '@document'\nexport var NAMESPACE = '@namespace'\nexport var KEYFRAMES = '@keyframes'\nexport var FONT_FACE = '@font-face'\nexport var COUNTER_STYLE = '@counter-style'\nexport var FONT_FEATURE_VALUES = '@font-feature-values'\nexport var LAYER = '@layer'\n","/**\n * @param {number}\n * @return {number}\n */\nexport var abs = Math.abs\n\n/**\n * @param {number}\n * @return {string}\n */\nexport var from = String.fromCharCode\n\n/**\n * @param {object}\n * @return {object}\n */\nexport var assign = Object.assign\n\n/**\n * @param {string} value\n * @param {number} length\n * @return {number}\n */\nexport function hash (value, length) {\n\treturn charat(value, 0) ^ 45 ? (((((((length << 2) ^ charat(value, 0)) << 2) ^ charat(value, 1)) << 2) ^ charat(value, 2)) << 2) ^ charat(value, 3) : 0\n}\n\n/**\n * @param {string} value\n * @return {string}\n */\nexport function trim (value) {\n\treturn value.trim()\n}\n\n/**\n * @param {string} value\n * @param {RegExp} pattern\n * @return {string?}\n */\nexport function match (value, pattern) {\n\treturn (value = pattern.exec(value)) ? value[0] : value\n}\n\n/**\n * @param {string} value\n * @param {(string|RegExp)} pattern\n * @param {string} replacement\n * @return {string}\n */\nexport function replace (value, pattern, replacement) {\n\treturn value.replace(pattern, replacement)\n}\n\n/**\n * @param {string} value\n * @param {string} search\n * @return {number}\n */\nexport function indexof (value, search) {\n\treturn value.indexOf(search)\n}\n\n/**\n * @param {string} value\n * @param {number} index\n * @return {number}\n */\nexport function charat (value, index) {\n\treturn value.charCodeAt(index) | 0\n}\n\n/**\n * @param {string} value\n * @param {number} begin\n * @param {number} end\n * @return {string}\n */\nexport function substr (value, begin, end) {\n\treturn value.slice(begin, end)\n}\n\n/**\n * @param {string} value\n * @return {number}\n */\nexport function strlen (value) {\n\treturn value.length\n}\n\n/**\n * @param {any[]} value\n * @return {number}\n */\nexport function sizeof (value) {\n\treturn value.length\n}\n\n/**\n * @param {any} value\n * @param {any[]} array\n * @return {any}\n */\nexport function append (value, array) {\n\treturn array.push(value), value\n}\n\n/**\n * @param {string[]} array\n * @param {function} callback\n * @return {string}\n */\nexport function combine (array, callback) {\n\treturn array.map(callback).join('')\n}\n","import {from, trim, charat, strlen, substr, append, assign} from './Utility.js'\n\nexport var line = 1\nexport var column = 1\nexport var length = 0\nexport var position = 0\nexport var character = 0\nexport var characters = ''\n\n/**\n * @param {string} value\n * @param {object | null} root\n * @param {object | null} parent\n * @param {string} type\n * @param {string[] | string} props\n * @param {object[] | string} children\n * @param {number} length\n */\nexport function node (value, root, parent, type, props, children, length) {\n\treturn {value: value, root: root, parent: parent, type: type, props: props, children: children, line: line, column: column, length: length, return: ''}\n}\n\n/**\n * @param {object} root\n * @param {object} props\n * @return {object}\n */\nexport function copy (root, props) {\n\treturn assign(node('', null, null, '', null, null, 0), root, {length: -root.length}, props)\n}\n\n/**\n * @return {number}\n */\nexport function char () {\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function prev () {\n\tcharacter = position > 0 ? charat(characters, --position) : 0\n\n\tif (column--, character === 10)\n\t\tcolumn = 1, line--\n\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function next () {\n\tcharacter = position < length ? charat(characters, position++) : 0\n\n\tif (column++, character === 10)\n\t\tcolumn = 1, line++\n\n\treturn character\n}\n\n/**\n * @return {number}\n */\nexport function peek () {\n\treturn charat(characters, position)\n}\n\n/**\n * @return {number}\n */\nexport function caret () {\n\treturn position\n}\n\n/**\n * @param {number} begin\n * @param {number} end\n * @return {string}\n */\nexport function slice (begin, end) {\n\treturn substr(characters, begin, end)\n}\n\n/**\n * @param {number} type\n * @return {number}\n */\nexport function token (type) {\n\tswitch (type) {\n\t\t// \\0 \\t \\n \\r \\s whitespace token\n\t\tcase 0: case 9: case 10: case 13: case 32:\n\t\t\treturn 5\n\t\t// ! + , / > @ ~ isolate token\n\t\tcase 33: case 43: case 44: case 47: case 62: case 64: case 126:\n\t\t// ; { } breakpoint token\n\t\tcase 59: case 123: case 125:\n\t\t\treturn 4\n\t\t// : accompanied token\n\t\tcase 58:\n\t\t\treturn 3\n\t\t// \" ' ( [ opening delimit token\n\t\tcase 34: case 39: case 40: case 91:\n\t\t\treturn 2\n\t\t// ) ] closing delimit token\n\t\tcase 41: case 93:\n\t\t\treturn 1\n\t}\n\n\treturn 0\n}\n\n/**\n * @param {string} value\n * @return {any[]}\n */\nexport function alloc (value) {\n\treturn line = column = 1, length = strlen(characters = value), position = 0, []\n}\n\n/**\n * @param {any} value\n * @return {any}\n */\nexport function dealloc (value) {\n\treturn characters = '', value\n}\n\n/**\n * @param {number} type\n * @return {string}\n */\nexport function delimit (type) {\n\treturn trim(slice(position - 1, delimiter(type === 91 ? type + 2 : type === 40 ? type + 1 : type)))\n}\n\n/**\n * @param {string} value\n * @return {string[]}\n */\nexport function tokenize (value) {\n\treturn dealloc(tokenizer(alloc(value)))\n}\n\n/**\n * @param {number} type\n * @return {string}\n */\nexport function whitespace (type) {\n\twhile (character = peek())\n\t\tif (character < 33)\n\t\t\tnext()\n\t\telse\n\t\t\tbreak\n\n\treturn token(type) > 2 || token(character) > 3 ? '' : ' '\n}\n\n/**\n * @param {string[]} children\n * @return {string[]}\n */\nexport function tokenizer (children) {\n\twhile (next())\n\t\tswitch (token(character)) {\n\t\t\tcase 0: append(identifier(position - 1), children)\n\t\t\t\tbreak\n\t\t\tcase 2: append(delimit(character), children)\n\t\t\t\tbreak\n\t\t\tdefault: append(from(character), children)\n\t\t}\n\n\treturn children\n}\n\n/**\n * @param {number} index\n * @param {number} count\n * @return {string}\n */\nexport function escaping (index, count) {\n\twhile (--count && next())\n\t\t// not 0-9 A-F a-f\n\t\tif (character < 48 || character > 102 || (character > 57 && character < 65) || (character > 70 && character < 97))\n\t\t\tbreak\n\n\treturn slice(index, caret() + (count < 6 && peek() == 32 && next() == 32))\n}\n\n/**\n * @param {number} type\n * @return {number}\n */\nexport function delimiter (type) {\n\twhile (next())\n\t\tswitch (character) {\n\t\t\t// ] ) \" '\n\t\t\tcase type:\n\t\t\t\treturn position\n\t\t\t// \" '\n\t\t\tcase 34: case 39:\n\t\t\t\tif (type !== 34 && type !== 39)\n\t\t\t\t\tdelimiter(character)\n\t\t\t\tbreak\n\t\t\t// (\n\t\t\tcase 40:\n\t\t\t\tif (type === 41)\n\t\t\t\t\tdelimiter(type)\n\t\t\t\tbreak\n\t\t\t// \\\n\t\t\tcase 92:\n\t\t\t\tnext()\n\t\t\t\tbreak\n\t\t}\n\n\treturn position\n}\n\n/**\n * @param {number} type\n * @param {number} index\n * @return {number}\n */\nexport function commenter (type, index) {\n\twhile (next())\n\t\t// //\n\t\tif (type + character === 47 + 10)\n\t\t\tbreak\n\t\t// /*\n\t\telse if (type + character === 42 + 42 && peek() === 47)\n\t\t\tbreak\n\n\treturn '/*' + slice(index, position - 1) + '*' + from(type === 47 ? type : next())\n}\n\n/**\n * @param {number} index\n * @return {string}\n */\nexport function identifier (index) {\n\twhile (!token(peek()))\n\t\tnext()\n\n\treturn slice(index, position)\n}\n","import {COMMENT, RULESET, DECLARATION} from './Enum.js'\nimport {abs, charat, trim, from, sizeof, strlen, substr, append, replace, indexof} from './Utility.js'\nimport {node, char, prev, next, peek, caret, alloc, dealloc, delimit, whitespace, escaping, identifier, commenter} from './Tokenizer.js'\n\n/**\n * @param {string} value\n * @return {object[]}\n */\nexport function compile (value) {\n\treturn dealloc(parse('', null, null, null, [''], value = alloc(value), 0, [0], value))\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {string[]} rule\n * @param {string[]} rules\n * @param {string[]} rulesets\n * @param {number[]} pseudo\n * @param {number[]} points\n * @param {string[]} declarations\n * @return {object}\n */\nexport function parse (value, root, parent, rule, rules, rulesets, pseudo, points, declarations) {\n\tvar index = 0\n\tvar offset = 0\n\tvar length = pseudo\n\tvar atrule = 0\n\tvar property = 0\n\tvar previous = 0\n\tvar variable = 1\n\tvar scanning = 1\n\tvar ampersand = 1\n\tvar character = 0\n\tvar type = ''\n\tvar props = rules\n\tvar children = rulesets\n\tvar reference = rule\n\tvar characters = type\n\n\twhile (scanning)\n\t\tswitch (previous = character, character = next()) {\n\t\t\t// (\n\t\t\tcase 40:\n\t\t\t\tif (previous != 108 && charat(characters, length - 1) == 58) {\n\t\t\t\t\tif (indexof(characters += replace(delimit(character), '&', '&\\f'), '&\\f') != -1)\n\t\t\t\t\t\tampersand = -1\n\t\t\t\t\tbreak\n\t\t\t\t}\n\t\t\t// \" ' [\n\t\t\tcase 34: case 39: case 91:\n\t\t\t\tcharacters += delimit(character)\n\t\t\t\tbreak\n\t\t\t// \\t \\n \\r \\s\n\t\t\tcase 9: case 10: case 13: case 32:\n\t\t\t\tcharacters += whitespace(previous)\n\t\t\t\tbreak\n\t\t\t// \\\n\t\t\tcase 92:\n\t\t\t\tcharacters += escaping(caret() - 1, 7)\n\t\t\t\tcontinue\n\t\t\t// /\n\t\t\tcase 47:\n\t\t\t\tswitch (peek()) {\n\t\t\t\t\tcase 42: case 47:\n\t\t\t\t\t\tappend(comment(commenter(next(), caret()), root, parent), declarations)\n\t\t\t\t\t\tbreak\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tcharacters += '/'\n\t\t\t\t}\n\t\t\t\tbreak\n\t\t\t// {\n\t\t\tcase 123 * variable:\n\t\t\t\tpoints[index++] = strlen(characters) * ampersand\n\t\t\t// } ; \\0\n\t\t\tcase 125 * variable: case 59: case 0:\n\t\t\t\tswitch (character) {\n\t\t\t\t\t// \\0 }\n\t\t\t\t\tcase 0: case 125: scanning = 0\n\t\t\t\t\t// ;\n\t\t\t\t\tcase 59 + offset: if (ampersand == -1) characters = replace(characters, /\\f/g, '')\n\t\t\t\t\t\tif (property > 0 && (strlen(characters) - length))\n\t\t\t\t\t\t\tappend(property > 32 ? declaration(characters + ';', rule, parent, length - 1) : declaration(replace(characters, ' ', '') + ';', rule, parent, length - 2), declarations)\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// @ ;\n\t\t\t\t\tcase 59: characters += ';'\n\t\t\t\t\t// { rule/at-rule\n\t\t\t\t\tdefault:\n\t\t\t\t\t\tappend(reference = ruleset(characters, root, parent, index, offset, rules, points, type, props = [], children = [], length), rulesets)\n\n\t\t\t\t\t\tif (character === 123)\n\t\t\t\t\t\t\tif (offset === 0)\n\t\t\t\t\t\t\t\tparse(characters, root, reference, reference, props, rulesets, length, points, children)\n\t\t\t\t\t\t\telse\n\t\t\t\t\t\t\t\tswitch (atrule === 99 && charat(characters, 3) === 110 ? 100 : atrule) {\n\t\t\t\t\t\t\t\t\t// d l m s\n\t\t\t\t\t\t\t\t\tcase 100: case 108: case 109: case 115:\n\t\t\t\t\t\t\t\t\t\tparse(value, reference, reference, rule && append(ruleset(value, reference, reference, 0, 0, rules, points, type, rules, props = [], length), children), rules, children, length, points, rule ? props : children)\n\t\t\t\t\t\t\t\t\t\tbreak\n\t\t\t\t\t\t\t\t\tdefault:\n\t\t\t\t\t\t\t\t\t\tparse(characters, reference, reference, reference, [''], children, 0, points, children)\n\t\t\t\t\t\t\t\t}\n\t\t\t\t}\n\n\t\t\t\tindex = offset = property = 0, variable = ampersand = 1, type = characters = '', length = pseudo\n\t\t\t\tbreak\n\t\t\t// :\n\t\t\tcase 58:\n\t\t\t\tlength = 1 + strlen(characters), property = previous\n\t\t\tdefault:\n\t\t\t\tif (variable < 1)\n\t\t\t\t\tif (character == 123)\n\t\t\t\t\t\t--variable\n\t\t\t\t\telse if (character == 125 && variable++ == 0 && prev() == 125)\n\t\t\t\t\t\tcontinue\n\n\t\t\t\tswitch (characters += from(character), character * variable) {\n\t\t\t\t\t// &\n\t\t\t\t\tcase 38:\n\t\t\t\t\t\tampersand = offset > 0 ? 1 : (characters += '\\f', -1)\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// ,\n\t\t\t\t\tcase 44:\n\t\t\t\t\t\tpoints[index++] = (strlen(characters) - 1) * ampersand, ampersand = 1\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// @\n\t\t\t\t\tcase 64:\n\t\t\t\t\t\t// -\n\t\t\t\t\t\tif (peek() === 45)\n\t\t\t\t\t\t\tcharacters += delimit(next())\n\n\t\t\t\t\t\tatrule = peek(), offset = length = strlen(type = characters += identifier(caret())), character++\n\t\t\t\t\t\tbreak\n\t\t\t\t\t// -\n\t\t\t\t\tcase 45:\n\t\t\t\t\t\tif (previous === 45 && strlen(characters) == 2)\n\t\t\t\t\t\t\tvariable = 0\n\t\t\t\t}\n\t\t}\n\n\treturn rulesets\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {number} index\n * @param {number} offset\n * @param {string[]} rules\n * @param {number[]} points\n * @param {string} type\n * @param {string[]} props\n * @param {string[]} children\n * @param {number} length\n * @return {object}\n */\nexport function ruleset (value, root, parent, index, offset, rules, points, type, props, children, length) {\n\tvar post = offset - 1\n\tvar rule = offset === 0 ? rules : ['']\n\tvar size = sizeof(rule)\n\n\tfor (var i = 0, j = 0, k = 0; i < index; ++i)\n\t\tfor (var x = 0, y = substr(value, post + 1, post = abs(j = points[i])), z = value; x < size; ++x)\n\t\t\tif (z = trim(j > 0 ? rule[x] + ' ' + y : replace(y, /&\\f/g, rule[x])))\n\t\t\t\tprops[k++] = z\n\n\treturn node(value, root, parent, offset === 0 ? RULESET : type, props, children, length)\n}\n\n/**\n * @param {number} value\n * @param {object} root\n * @param {object?} parent\n * @return {object}\n */\nexport function comment (value, root, parent) {\n\treturn node(value, root, parent, COMMENT, from(char()), substr(value, 2, -2), 0)\n}\n\n/**\n * @param {string} value\n * @param {object} root\n * @param {object?} parent\n * @param {number} length\n * @return {object}\n */\nexport function declaration (value, root, parent, length) {\n\treturn node(value, root, parent, DECLARATION, substr(value, 0, length), substr(value, length + 1, -1), length)\n}\n","import {IMPORT, LAYER, COMMENT, RULESET, DECLARATION, KEYFRAMES} from './Enum.js'\nimport {strlen, sizeof} from './Utility.js'\n\n/**\n * @param {object[]} children\n * @param {function} callback\n * @return {string}\n */\nexport function serialize (children, callback) {\n\tvar output = ''\n\tvar length = sizeof(children)\n\n\tfor (var i = 0; i < length; i++)\n\t\toutput += callback(children[i], i, children, callback) || ''\n\n\treturn output\n}\n\n/**\n * @param {object} element\n * @param {number} index\n * @param {object[]} children\n * @param {function} callback\n * @return {string}\n */\nexport function stringify (element, index, children, callback) {\n\tswitch (element.type) {\n\t\tcase LAYER: if (element.children.length) break\n\t\tcase IMPORT: case DECLARATION: return element.return = element.return || element.value\n\t\tcase COMMENT: return ''\n\t\tcase KEYFRAMES: return element.return = element.value + '{' + serialize(element.children, callback) + '}'\n\t\tcase RULESET: element.value = element.props.join(',')\n\t}\n\n\treturn strlen(children = serialize(element.children, callback)) ? element.return = element.value + '{' + children + '}' : ''\n}\n","import devWarning from '../../../vc-util/warning';\nexport function lintWarning(message, info) {\n const {\n path,\n parentSelectors\n } = info;\n devWarning(false, `[Ant Design Vue CSS-in-JS] ${path ? `Error in '${path}': ` : ''}${message}${parentSelectors.length ? ` Selector info: ${parentSelectors.join(' -> ')}` : ''}`);\n}","import { lintWarning } from './utils';\nconst linter = (key, value, info) => {\n if (key === 'content') {\n // From emotion: https://github.com/emotion-js/emotion/blob/main/packages/serialize/src/index.js#L63\n const contentValuePattern = /(attr|counters?|url|(((repeating-)?(linear|radial))|conic)-gradient)\\(|(no-)?(open|close)-quote/;\n const contentValues = ['normal', 'none', 'initial', 'inherit', 'unset'];\n if (typeof value !== 'string' || contentValues.indexOf(value) === -1 && !contentValuePattern.test(value) && (value.charAt(0) !== value.charAt(value.length - 1) || value.charAt(0) !== '\"' && value.charAt(0) !== \"'\")) {\n lintWarning(`You seem to be using a value for 'content' without quotes, try replacing it with \\`content: '\"${value}\"'\\`.`, info);\n }\n }\n};\nexport default linter;","import { lintWarning } from './utils';\nconst linter = (key, value, info) => {\n if (key === 'animation') {\n if (info.hashId && value !== 'none') {\n lintWarning(`You seem to be using hashed animation '${value}', in which case 'animationName' with Keyframe as value is recommended.`, info);\n }\n }\n};\nexport default linter;","import canUseDom from '../../../../_util/canUseDom';\nimport { ATTR_MARK } from '../../StyleContext';\nexport const ATTR_CACHE_MAP = 'data-ant-cssinjs-cache-path';\n/**\n * This marks style from the css file.\n * Which means not exist in `<style />` tag.\n */\nexport const CSS_FILE_STYLE = '_FILE_STYLE__';\nexport function serialize(cachePathMap) {\n return Object.keys(cachePathMap).map(path => {\n const hash = cachePathMap[path];\n return `${path}:${hash}`;\n }).join(';');\n}\nlet cachePathMap;\nlet fromCSSFile = true;\n/**\n * @private Test usage only. Can save remove if no need.\n */\nexport function reset(mockCache) {\n let fromFile = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : true;\n cachePathMap = mockCache;\n fromCSSFile = fromFile;\n}\nexport function prepare() {\n var _a;\n if (!cachePathMap) {\n cachePathMap = {};\n if (canUseDom()) {\n const div = document.createElement('div');\n div.className = ATTR_CACHE_MAP;\n div.style.position = 'fixed';\n div.style.visibility = 'hidden';\n div.style.top = '-9999px';\n document.body.appendChild(div);\n let content = getComputedStyle(div).content || '';\n content = content.replace(/^\"/, '').replace(/\"$/, '');\n // Fill data\n content.split(';').forEach(item => {\n const [path, hash] = item.split(':');\n cachePathMap[path] = hash;\n });\n // Remove inline record style\n const inlineMapStyle = document.querySelector(`style[${ATTR_CACHE_MAP}]`);\n if (inlineMapStyle) {\n fromCSSFile = false;\n (_a = inlineMapStyle.parentNode) === null || _a === void 0 ? void 0 : _a.removeChild(inlineMapStyle);\n }\n document.body.removeChild(div);\n }\n }\n}\nexport function existPath(path) {\n prepare();\n return !!cachePathMap[path];\n}\nexport function getStyleAndHash(path) {\n const hash = cachePathMap[path];\n let styleStr = null;\n if (hash && canUseDom()) {\n if (fromCSSFile) {\n styleStr = CSS_FILE_STYLE;\n } else {\n const style = document.querySelector(`style[${ATTR_MARK}=\"${cachePathMap[path]}\"]`);\n if (style) {\n styleStr = style.innerHTML;\n } else {\n // Clean up since not exist anymore\n delete cachePathMap[path];\n }\n }\n }\n return [styleStr, hash];\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport hash from '@emotion/hash';\n// @ts-ignore\nimport unitless from '@emotion/unitless';\nimport { compile, serialize, stringify } from 'stylis';\nimport { contentQuotesLinter, hashedAnimationLinter } from '../../linters';\nimport { useStyleInject, ATTR_CACHE_PATH, ATTR_MARK, ATTR_TOKEN, CSS_IN_JS_INSTANCE } from '../../StyleContext';\nimport { supportLayer } from '../../util';\nimport useGlobalCache from '../useGlobalCache';\nimport { removeCSS, updateCSS } from '../../../../vc-util/Dom/dynamicCSS';\nimport { computed } from 'vue';\nimport canUseDom from '../../../../_util/canUseDom';\nimport { ATTR_CACHE_MAP, existPath, getStyleAndHash, serialize as serializeCacheMap } from './cacheMapUtil';\nconst isClientSide = canUseDom();\nconst SKIP_CHECK = '_skip_check_';\nconst MULTI_VALUE = '_multi_value_';\n// ============================================================================\n// == Parser ==\n// ============================================================================\n// Preprocessor style content to browser support one\nexport function normalizeStyle(styleStr) {\n const serialized = serialize(compile(styleStr), stringify);\n return serialized.replace(/\\{%%%\\:[^;];}/g, ';');\n}\nfunction isCompoundCSSProperty(value) {\n return typeof value === 'object' && value && (SKIP_CHECK in value || MULTI_VALUE in value);\n}\n// 注入 hash 值\nfunction injectSelectorHash(key, hashId, hashPriority) {\n if (!hashId) {\n return key;\n }\n const hashClassName = `.${hashId}`;\n const hashSelector = hashPriority === 'low' ? `:where(${hashClassName})` : hashClassName;\n // 注入 hashId\n const keys = key.split(',').map(k => {\n var _a;\n const fullPath = k.trim().split(/\\s+/);\n // 如果 Selector 第一个是 HTML Element,那我们就插到它的后面。反之,就插到最前面。\n let firstPath = fullPath[0] || '';\n const htmlElement = ((_a = firstPath.match(/^\\w+/)) === null || _a === void 0 ? void 0 : _a[0]) || '';\n firstPath = `${htmlElement}${hashSelector}${firstPath.slice(htmlElement.length)}`;\n return [firstPath, ...fullPath.slice(1)].join(' ');\n });\n return keys.join(',');\n}\n// Global effect style will mount once and not removed\n// The effect will not save in SSR cache (e.g. keyframes)\nconst globalEffectStyleKeys = new Set();\n/**\n * @private Test only. Clear the global effect style keys.\n */\nexport const _cf = process.env.NODE_ENV !== 'production' ? () => globalEffectStyleKeys.clear() : undefined;\n// Parse CSSObject to style content\nexport const parseStyle = function (interpolation) {\n let config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n let {\n root,\n injectHash,\n parentSelectors\n } = arguments.length > 2 && arguments[2] !== undefined ? arguments[2] : {\n root: true,\n parentSelectors: []\n };\n const {\n hashId,\n layer,\n path,\n hashPriority,\n transformers = [],\n linters = []\n } = config;\n let styleStr = '';\n let effectStyle = {};\n function parseKeyframes(keyframes) {\n const animationName = keyframes.getName(hashId);\n if (!effectStyle[animationName]) {\n const [parsedStr] = parseStyle(keyframes.style, config, {\n root: false,\n parentSelectors\n });\n effectStyle[animationName] = `@keyframes ${keyframes.getName(hashId)}${parsedStr}`;\n }\n }\n function flattenList(list) {\n let fullList = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : [];\n list.forEach(item => {\n if (Array.isArray(item)) {\n flattenList(item, fullList);\n } else if (item) {\n fullList.push(item);\n }\n });\n return fullList;\n }\n const flattenStyleList = flattenList(Array.isArray(interpolation) ? interpolation : [interpolation]);\n flattenStyleList.forEach(originStyle => {\n // Only root level can use raw string\n const style = typeof originStyle === 'string' && !root ? {} : originStyle;\n if (typeof style === 'string') {\n styleStr += `${style}\\n`;\n } else if (style._keyframe) {\n // Keyframe\n parseKeyframes(style);\n } else {\n const mergedStyle = transformers.reduce((prev, trans) => {\n var _a;\n return ((_a = trans === null || trans === void 0 ? void 0 : trans.visit) === null || _a === void 0 ? void 0 : _a.call(trans, prev)) || prev;\n }, style);\n // Normal CSSObject\n Object.keys(mergedStyle).forEach(key => {\n var _a;\n const value = mergedStyle[key];\n if (typeof value === 'object' && value && (key !== 'animationName' || !value._keyframe) && !isCompoundCSSProperty(value)) {\n let subInjectHash = false;\n // 当成嵌套对象来处理\n let mergedKey = key.trim();\n // Whether treat child as root. In most case it is false.\n let nextRoot = false;\n // 拆分多个选择器\n if ((root || injectHash) && hashId) {\n if (mergedKey.startsWith('@')) {\n // 略过媒体查询,交给子节点继续插入 hashId\n subInjectHash = true;\n } else {\n // 注入 hashId\n mergedKey = injectSelectorHash(key, hashId, hashPriority);\n }\n } else if (root && !hashId && (mergedKey === '&' || mergedKey === '')) {\n // In case of `{ '&': { a: { color: 'red' } } }` or `{ '': { a: { color: 'red' } } }` without hashId,\n // we will get `&{a:{color:red;}}` or `{a:{color:red;}}` string for stylis to compile.\n // But it does not conform to stylis syntax,\n // and finally we will get `{color:red;}` as css, which is wrong.\n // So we need to remove key in root, and treat child `{ a: { color: 'red' } }` as root.\n mergedKey = '';\n nextRoot = true;\n }\n const [parsedStr, childEffectStyle] = parseStyle(value, config, {\n root: nextRoot,\n injectHash: subInjectHash,\n parentSelectors: [...parentSelectors, mergedKey]\n });\n effectStyle = _extends(_extends({}, effectStyle), childEffectStyle);\n styleStr += `${mergedKey}${parsedStr}`;\n } else {\n function appendStyle(cssKey, cssValue) {\n if (process.env.NODE_ENV !== 'production' && (typeof value !== 'object' || !(value === null || value === void 0 ? void 0 : value[SKIP_CHECK]))) {\n [contentQuotesLinter, hashedAnimationLinter, ...linters].forEach(linter => linter(cssKey, cssValue, {\n path,\n hashId,\n parentSelectors\n }));\n }\n // 如果是样式则直接插入\n const styleName = cssKey.replace(/[A-Z]/g, match => `-${match.toLowerCase()}`);\n // Auto suffix with px\n let formatValue = cssValue;\n if (!unitless[cssKey] && typeof formatValue === 'number' && formatValue !== 0) {\n formatValue = `${formatValue}px`;\n }\n // handle animationName & Keyframe value\n if (cssKey === 'animationName' && (cssValue === null || cssValue === void 0 ? void 0 : cssValue._keyframe)) {\n parseKeyframes(cssValue);\n formatValue = cssValue.getName(hashId);\n }\n styleStr += `${styleName}:${formatValue};`;\n }\n const actualValue = (_a = value === null || value === void 0 ? void 0 : value.value) !== null && _a !== void 0 ? _a : value;\n if (typeof value === 'object' && (value === null || value === void 0 ? void 0 : value[MULTI_VALUE]) && Array.isArray(actualValue)) {\n actualValue.forEach(item => {\n appendStyle(key, item);\n });\n } else {\n appendStyle(key, actualValue);\n }\n }\n });\n }\n });\n if (!root) {\n styleStr = `{${styleStr}}`;\n } else if (layer && supportLayer()) {\n const layerCells = layer.split(',');\n const layerName = layerCells[layerCells.length - 1].trim();\n styleStr = `@layer ${layerName} {${styleStr}}`;\n // Order of layer if needed\n if (layerCells.length > 1) {\n // zombieJ: stylis do not support layer order, so we need to handle it manually.\n styleStr = `@layer ${layer}{%%%:%}${styleStr}`;\n }\n }\n return [styleStr, effectStyle];\n};\n// ============================================================================\n// == Register ==\n// ============================================================================\nfunction uniqueHash(path, styleStr) {\n return hash(`${path.join('%')}${styleStr}`);\n}\n// function Empty() {\n// return null;\n// }\n/**\n * Register a style to the global style sheet.\n */\nexport default function useStyleRegister(info, styleFn) {\n const styleContext = useStyleInject();\n const tokenKey = computed(() => info.value.token._tokenKey);\n const fullPath = computed(() => [tokenKey.value, ...info.value.path]);\n // Check if need insert style\n let isMergedClientSide = isClientSide;\n if (process.env.NODE_ENV !== 'production' && styleContext.value.mock !== undefined) {\n isMergedClientSide = styleContext.value.mock === 'client';\n }\n // const [cacheStyle[0], cacheStyle[1], cacheStyle[2]]\n useGlobalCache('style', fullPath,\n // Create cache if needed\n () => {\n const {\n path,\n hashId,\n layer,\n nonce,\n clientOnly,\n order = 0\n } = info.value;\n const cachePath = fullPath.value.join('|');\n // Get style from SSR inline style directly\n if (existPath(cachePath)) {\n const [inlineCacheStyleStr, styleHash] = getStyleAndHash(cachePath);\n if (inlineCacheStyleStr) {\n return [inlineCacheStyleStr, tokenKey.value, styleHash, {}, clientOnly, order];\n }\n }\n const styleObj = styleFn();\n const {\n hashPriority,\n container,\n transformers,\n linters,\n cache\n } = styleContext.value;\n const [parsedStyle, effectStyle] = parseStyle(styleObj, {\n hashId,\n hashPriority,\n layer,\n path: path.join('-'),\n transformers,\n linters\n });\n const styleStr = normalizeStyle(parsedStyle);\n const styleId = uniqueHash(fullPath.value, styleStr);\n if (isMergedClientSide) {\n const mergedCSSConfig = {\n mark: ATTR_MARK,\n prepend: 'queue',\n attachTo: container,\n priority: order\n };\n const nonceStr = typeof nonce === 'function' ? nonce() : nonce;\n if (nonceStr) {\n mergedCSSConfig.csp = {\n nonce: nonceStr\n };\n }\n const style = updateCSS(styleStr, styleId, mergedCSSConfig);\n style[CSS_IN_JS_INSTANCE] = cache.instanceId;\n // Used for `useCacheToken` to remove on batch when token removed\n style.setAttribute(ATTR_TOKEN, tokenKey.value);\n // Dev usage to find which cache path made this easily\n if (process.env.NODE_ENV !== 'production') {\n style.setAttribute(ATTR_CACHE_PATH, fullPath.value.join('|'));\n }\n // Inject client side effect style\n Object.keys(effectStyle).forEach(effectKey => {\n if (!globalEffectStyleKeys.has(effectKey)) {\n globalEffectStyleKeys.add(effectKey);\n // Inject\n updateCSS(normalizeStyle(effectStyle[effectKey]), `_effect-${effectKey}`, {\n mark: ATTR_MARK,\n prepend: 'queue',\n attachTo: container\n });\n }\n });\n }\n return [styleStr, tokenKey.value, styleId, effectStyle, clientOnly, order];\n },\n // Remove cache if no need\n (_ref, fromHMR) => {\n let [,, styleId] = _ref;\n if ((fromHMR || styleContext.value.autoClear) && isClientSide) {\n removeCSS(styleId, {\n mark: ATTR_MARK\n });\n }\n });\n return node => {\n return node;\n // let styleNode: VueNode;\n // if (!styleContext.ssrInline || isMergedClientSide || !styleContext.defaultCache) {\n // styleNode = <Empty />;\n // } else {\n // styleNode = (\n // <style\n // {...{\n // [ATTR_TOKEN]: cacheStyle.value[1],\n // [ATTR_MARK]: cacheStyle.value[2],\n // }}\n // innerHTML={cacheStyle.value[0]}\n // />\n // );\n // }\n // return (\n // <>\n // {styleNode}\n // {node}\n // </>\n // );\n };\n}\n// ============================================================================\n// == SSR ==\n// ============================================================================\nexport function extractStyle(cache) {\n let plain = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : false;\n const matchPrefix = `style%`;\n // prefix with `style` is used for `useStyleRegister` to cache style context\n const styleKeys = Array.from(cache.cache.keys()).filter(key => key.startsWith(matchPrefix));\n // Common effect styles like animation\n const effectStyles = {};\n // Mapping of cachePath to style hash\n const cachePathMap = {};\n let styleText = '';\n function toStyleStr(style, tokenKey, styleId) {\n let customizeAttrs = arguments.length > 3 && arguments[3] !== undefined ? arguments[3] : {};\n const attrs = _extends(_extends({}, customizeAttrs), {\n [ATTR_TOKEN]: tokenKey,\n [ATTR_MARK]: styleId\n });\n const attrStr = Object.keys(attrs).map(attr => {\n const val = attrs[attr];\n return val ? `${attr}=\"${val}\"` : null;\n }).filter(v => v).join(' ');\n return plain ? style : `<style ${attrStr}>${style}</style>`;\n }\n const orderStyles = styleKeys.map(key => {\n const cachePath = key.slice(matchPrefix.length).replace(/%/g, '|');\n const [styleStr, tokenKey, styleId, effectStyle, clientOnly, order] = cache.cache.get(key)[1];\n // Skip client only style\n if (clientOnly) {\n return null;\n }\n // ====================== Style ======================\n // Used for vc-util\n const sharedAttrs = {\n 'data-vc-order': 'prependQueue',\n 'data-vc-priority': `${order}`\n };\n let keyStyleText = toStyleStr(styleStr, tokenKey, styleId, sharedAttrs);\n // Save cache path with hash mapping\n cachePathMap[cachePath] = styleId;\n // =============== Create effect style ===============\n if (effectStyle) {\n Object.keys(effectStyle).forEach(effectKey => {\n // Effect style can be reused\n if (!effectStyles[effectKey]) {\n effectStyles[effectKey] = true;\n keyStyleText += toStyleStr(normalizeStyle(effectStyle[effectKey]), tokenKey, `_effect-${effectKey}`, sharedAttrs);\n }\n });\n }\n const ret = [order, keyStyleText];\n return ret;\n }).filter(o => o);\n orderStyles.sort((o1, o2) => o1[0] - o2[0]).forEach(_ref2 => {\n let [, style] = _ref2;\n styleText += style;\n });\n // ==================== Fill Cache Path ====================\n styleText += toStyleStr(`.${ATTR_CACHE_MAP}{content:\"${serializeCacheMap(cachePathMap)}\";}`, undefined, undefined, {\n [ATTR_CACHE_MAP]: ATTR_CACHE_MAP\n });\n return styleText;\n}","class Keyframe {\n constructor(name, style) {\n this._keyframe = true;\n this.name = name;\n this.style = style;\n }\n getName() {\n let hashId = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : '';\n return hashId ? `${hashId}-${this.name}` : this.name;\n }\n}\nexport default Keyframe;","export default '4.2.6';","/* eslint import/no-unresolved: 0 */\n// @ts-ignore\nimport version from './version';\nexport default version;","const genControlHeight = token => {\n const {\n controlHeight\n } = token;\n return {\n controlHeightSM: controlHeight * 0.75,\n controlHeightXS: controlHeight * 0.5,\n controlHeightLG: controlHeight * 1.25\n };\n};\nexport default genControlHeight;","export default function genSizeMapToken(token) {\n const {\n sizeUnit,\n sizeStep\n } = token;\n return {\n sizeXXL: sizeUnit * (sizeStep + 8),\n sizeXL: sizeUnit * (sizeStep + 4),\n sizeLG: sizeUnit * (sizeStep + 2),\n sizeMD: sizeUnit * (sizeStep + 1),\n sizeMS: sizeUnit * sizeStep,\n size: sizeUnit * sizeStep,\n sizeSM: sizeUnit * (sizeStep - 1),\n sizeXS: sizeUnit * (sizeStep - 2),\n sizeXXS: sizeUnit * (sizeStep - 3) // 4\n };\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport const defaultPresetColors = {\n blue: '#1677ff',\n purple: '#722ED1',\n cyan: '#13C2C2',\n green: '#52C41A',\n magenta: '#EB2F96',\n pink: '#eb2f96',\n red: '#F5222D',\n orange: '#FA8C16',\n yellow: '#FADB14',\n volcano: '#FA541C',\n geekblue: '#2F54EB',\n gold: '#FAAD14',\n lime: '#A0D911'\n};\nconst seedToken = _extends(_extends({}, defaultPresetColors), {\n // Color\n colorPrimary: '#1677ff',\n colorSuccess: '#52c41a',\n colorWarning: '#faad14',\n colorError: '#ff4d4f',\n colorInfo: '#1677ff',\n colorTextBase: '',\n colorBgBase: '',\n // Font\n fontFamily: `-apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, 'Helvetica Neue', Arial,\n'Noto Sans', sans-serif, 'Apple Color Emoji', 'Segoe UI Emoji', 'Segoe UI Symbol',\n'Noto Color Emoji'`,\n fontSize: 14,\n // Line\n lineWidth: 1,\n lineType: 'solid',\n // Motion\n motionUnit: 0.1,\n motionBase: 0,\n motionEaseOutCirc: 'cubic-bezier(0.08, 0.82, 0.17, 1)',\n motionEaseInOutCirc: 'cubic-bezier(0.78, 0.14, 0.15, 0.86)',\n motionEaseOut: 'cubic-bezier(0.215, 0.61, 0.355, 1)',\n motionEaseInOut: 'cubic-bezier(0.645, 0.045, 0.355, 1)',\n motionEaseOutBack: 'cubic-bezier(0.12, 0.4, 0.29, 1.46)',\n motionEaseInBack: 'cubic-bezier(0.71, -0.46, 0.88, 0.6)',\n motionEaseInQuint: 'cubic-bezier(0.755, 0.05, 0.855, 0.06)',\n motionEaseOutQuint: 'cubic-bezier(0.23, 1, 0.32, 1)',\n // Radius\n borderRadius: 6,\n // Size\n sizeUnit: 4,\n sizeStep: 4,\n sizePopupArrow: 16,\n // Control Base\n controlHeight: 32,\n // zIndex\n zIndexBase: 0,\n zIndexPopupBase: 1000,\n // Image\n opacityImage: 1,\n // Wireframe\n wireframe: false\n});\nexport default seedToken;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { TinyColor } from '@ctrl/tinycolor';\nexport default function genColorMapToken(seed, _ref) {\n let {\n generateColorPalettes,\n generateNeutralColorPalettes\n } = _ref;\n const {\n colorSuccess: colorSuccessBase,\n colorWarning: colorWarningBase,\n colorError: colorErrorBase,\n colorInfo: colorInfoBase,\n colorPrimary: colorPrimaryBase,\n colorBgBase,\n colorTextBase\n } = seed;\n const primaryColors = generateColorPalettes(colorPrimaryBase);\n const successColors = generateColorPalettes(colorSuccessBase);\n const warningColors = generateColorPalettes(colorWarningBase);\n const errorColors = generateColorPalettes(colorErrorBase);\n const infoColors = generateColorPalettes(colorInfoBase);\n const neutralColors = generateNeutralColorPalettes(colorBgBase, colorTextBase);\n return _extends(_extends({}, neutralColors), {\n colorPrimaryBg: primaryColors[1],\n colorPrimaryBgHover: primaryColors[2],\n colorPrimaryBorder: primaryColors[3],\n colorPrimaryBorderHover: primaryColors[4],\n colorPrimaryHover: primaryColors[5],\n colorPrimary: primaryColors[6],\n colorPrimaryActive: primaryColors[7],\n colorPrimaryTextHover: primaryColors[8],\n colorPrimaryText: primaryColors[9],\n colorPrimaryTextActive: primaryColors[10],\n colorSuccessBg: successColors[1],\n colorSuccessBgHover: successColors[2],\n colorSuccessBorder: successColors[3],\n colorSuccessBorderHover: successColors[4],\n colorSuccessHover: successColors[4],\n colorSuccess: successColors[6],\n colorSuccessActive: successColors[7],\n colorSuccessTextHover: successColors[8],\n colorSuccessText: successColors[9],\n colorSuccessTextActive: successColors[10],\n colorErrorBg: errorColors[1],\n colorErrorBgHover: errorColors[2],\n colorErrorBorder: errorColors[3],\n colorErrorBorderHover: errorColors[4],\n colorErrorHover: errorColors[5],\n colorError: errorColors[6],\n colorErrorActive: errorColors[7],\n colorErrorTextHover: errorColors[8],\n colorErrorText: errorColors[9],\n colorErrorTextActive: errorColors[10],\n colorWarningBg: warningColors[1],\n colorWarningBgHover: warningColors[2],\n colorWarningBorder: warningColors[3],\n colorWarningBorderHover: warningColors[4],\n colorWarningHover: warningColors[4],\n colorWarning: warningColors[6],\n colorWarningActive: warningColors[7],\n colorWarningTextHover: warningColors[8],\n colorWarningText: warningColors[9],\n colorWarningTextActive: warningColors[10],\n colorInfoBg: infoColors[1],\n colorInfoBgHover: infoColors[2],\n colorInfoBorder: infoColors[3],\n colorInfoBorderHover: infoColors[4],\n colorInfoHover: infoColors[4],\n colorInfo: infoColors[6],\n colorInfoActive: infoColors[7],\n colorInfoTextHover: infoColors[8],\n colorInfoText: infoColors[9],\n colorInfoTextActive: infoColors[10],\n colorBgMask: new TinyColor('#000').setAlpha(0.45).toRgbString(),\n colorWhite: '#fff'\n });\n}","const genRadius = radiusBase => {\n let radiusLG = radiusBase;\n let radiusSM = radiusBase;\n let radiusXS = radiusBase;\n let radiusOuter = radiusBase;\n // radiusLG\n if (radiusBase < 6 && radiusBase >= 5) {\n radiusLG = radiusBase + 1;\n } else if (radiusBase < 16 && radiusBase >= 6) {\n radiusLG = radiusBase + 2;\n } else if (radiusBase >= 16) {\n radiusLG = 16;\n }\n // radiusSM\n if (radiusBase < 7 && radiusBase >= 5) {\n radiusSM = 4;\n } else if (radiusBase < 8 && radiusBase >= 7) {\n radiusSM = 5;\n } else if (radiusBase < 14 && radiusBase >= 8) {\n radiusSM = 6;\n } else if (radiusBase < 16 && radiusBase >= 14) {\n radiusSM = 7;\n } else if (radiusBase >= 16) {\n radiusSM = 8;\n }\n // radiusXS\n if (radiusBase < 6 && radiusBase >= 2) {\n radiusXS = 1;\n } else if (radiusBase >= 6) {\n radiusXS = 2;\n }\n // radiusOuter\n if (radiusBase > 4 && radiusBase < 8) {\n radiusOuter = 4;\n } else if (radiusBase >= 8) {\n radiusOuter = 6;\n }\n return {\n borderRadius: radiusBase > 16 ? 16 : radiusBase,\n borderRadiusXS: radiusXS,\n borderRadiusSM: radiusSM,\n borderRadiusLG: radiusLG,\n borderRadiusOuter: radiusOuter\n };\n};\nexport default genRadius;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport genRadius from './genRadius';\nexport default function genCommonMapToken(token) {\n const {\n motionUnit,\n motionBase,\n borderRadius,\n lineWidth\n } = token;\n return _extends({\n // motion\n motionDurationFast: `${(motionBase + motionUnit).toFixed(1)}s`,\n motionDurationMid: `${(motionBase + motionUnit * 2).toFixed(1)}s`,\n motionDurationSlow: `${(motionBase + motionUnit * 3).toFixed(1)}s`,\n // line\n lineWidthBold: lineWidth + 1\n }, genRadius(borderRadius));\n}","import { TinyColor } from '@ctrl/tinycolor';\nexport const getAlphaColor = (baseColor, alpha) => new TinyColor(baseColor).setAlpha(alpha).toRgbString();\nexport const getSolidColor = (baseColor, brightness) => {\n const instance = new TinyColor(baseColor);\n return instance.darken(brightness).toHexString();\n};","import { generate } from '@ant-design/colors';\nimport { getAlphaColor, getSolidColor } from './colorAlgorithm';\nexport const generateColorPalettes = baseColor => {\n const colors = generate(baseColor);\n return {\n 1: colors[0],\n 2: colors[1],\n 3: colors[2],\n 4: colors[3],\n 5: colors[4],\n 6: colors[5],\n 7: colors[6],\n 8: colors[4],\n 9: colors[5],\n 10: colors[6]\n // 8: colors[7],\n // 9: colors[8],\n // 10: colors[9],\n };\n};\nexport const generateNeutralColorPalettes = (bgBaseColor, textBaseColor) => {\n const colorBgBase = bgBaseColor || '#fff';\n const colorTextBase = textBaseColor || '#000';\n return {\n colorBgBase,\n colorTextBase,\n colorText: getAlphaColor(colorTextBase, 0.88),\n colorTextSecondary: getAlphaColor(colorTextBase, 0.65),\n colorTextTertiary: getAlphaColor(colorTextBase, 0.45),\n colorTextQuaternary: getAlphaColor(colorTextBase, 0.25),\n colorFill: getAlphaColor(colorTextBase, 0.15),\n colorFillSecondary: getAlphaColor(colorTextBase, 0.06),\n colorFillTertiary: getAlphaColor(colorTextBase, 0.04),\n colorFillQuaternary: getAlphaColor(colorTextBase, 0.02),\n colorBgLayout: getSolidColor(colorBgBase, 4),\n colorBgContainer: getSolidColor(colorBgBase, 0),\n colorBgElevated: getSolidColor(colorBgBase, 0),\n colorBgSpotlight: getAlphaColor(colorTextBase, 0.85),\n colorBorder: getSolidColor(colorBgBase, 15),\n colorBorderSecondary: getSolidColor(colorBgBase, 6)\n };\n};","// https://zhuanlan.zhihu.com/p/32746810\nexport default function getFontSizes(base) {\n const fontSizes = new Array(10).fill(null).map((_, index) => {\n const i = index - 1;\n const baseSize = base * Math.pow(2.71828, i / 5);\n const intSize = index > 1 ? Math.floor(baseSize) : Math.ceil(baseSize);\n // Convert to even\n return Math.floor(intSize / 2) * 2;\n });\n fontSizes[1] = base;\n return fontSizes.map(size => {\n const height = size + 8;\n return {\n size,\n lineHeight: height / size\n };\n });\n}","import genFontSizes from './genFontSizes';\nconst genFontMapToken = fontSize => {\n const fontSizePairs = genFontSizes(fontSize);\n const fontSizes = fontSizePairs.map(pair => pair.size);\n const lineHeights = fontSizePairs.map(pair => pair.lineHeight);\n return {\n fontSizeSM: fontSizes[0],\n fontSize: fontSizes[1],\n fontSizeLG: fontSizes[2],\n fontSizeXL: fontSizes[3],\n fontSizeHeading1: fontSizes[6],\n fontSizeHeading2: fontSizes[5],\n fontSizeHeading3: fontSizes[4],\n fontSizeHeading4: fontSizes[3],\n fontSizeHeading5: fontSizes[2],\n lineHeight: lineHeights[1],\n lineHeightLG: lineHeights[2],\n lineHeightSM: lineHeights[0],\n lineHeightHeading1: lineHeights[6],\n lineHeightHeading2: lineHeights[5],\n lineHeightHeading3: lineHeights[4],\n lineHeightHeading4: lineHeights[3],\n lineHeightHeading5: lineHeights[2]\n };\n};\nexport default genFontMapToken;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { generate } from '@ant-design/colors';\nimport genControlHeight from '../shared/genControlHeight';\nimport genSizeMapToken from '../shared/genSizeMapToken';\nimport { defaultPresetColors } from '../seed';\nimport genColorMapToken from '../shared/genColorMapToken';\nimport genCommonMapToken from '../shared/genCommonMapToken';\nimport { generateColorPalettes, generateNeutralColorPalettes } from './colors';\nimport genFontMapToken from '../shared/genFontMapToken';\nexport default function derivative(token) {\n const colorPalettes = Object.keys(defaultPresetColors).map(colorKey => {\n const colors = generate(token[colorKey]);\n return new Array(10).fill(1).reduce((prev, _, i) => {\n prev[`${colorKey}-${i + 1}`] = colors[i];\n return prev;\n }, {});\n }).reduce((prev, cur) => {\n prev = _extends(_extends({}, prev), cur);\n return prev;\n }, {});\n return _extends(_extends(_extends(_extends(_extends(_extends(_extends({}, token), colorPalettes), genColorMapToken(token, {\n generateColorPalettes,\n generateNeutralColorPalettes\n })), genFontMapToken(token.fontSize)), genSizeMapToken(token)), genControlHeight(token)), genCommonMapToken(token));\n}","import { TinyColor } from '@ctrl/tinycolor';\nfunction isStableColor(color) {\n return color >= 0 && color <= 255;\n}\nfunction getAlphaColor(frontColor, backgroundColor) {\n const {\n r: fR,\n g: fG,\n b: fB,\n a: originAlpha\n } = new TinyColor(frontColor).toRgb();\n if (originAlpha < 1) {\n return frontColor;\n }\n const {\n r: bR,\n g: bG,\n b: bB\n } = new TinyColor(backgroundColor).toRgb();\n for (let fA = 0.01; fA <= 1; fA += 0.01) {\n const r = Math.round((fR - bR * (1 - fA)) / fA);\n const g = Math.round((fG - bG * (1 - fA)) / fA);\n const b = Math.round((fB - bB * (1 - fA)) / fA);\n if (isStableColor(r) && isStableColor(g) && isStableColor(b)) {\n return new TinyColor({\n r,\n g,\n b,\n a: Math.round(fA * 100) / 100\n }).toRgbString();\n }\n }\n // fallback\n /* istanbul ignore next */\n return new TinyColor({\n r: fR,\n g: fG,\n b: fB,\n a: 1\n }).toRgbString();\n}\nexport default getAlphaColor;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { TinyColor } from '@ctrl/tinycolor';\nimport getAlphaColor from './getAlphaColor';\nimport seedToken from '../themes/seed';\n/**\n * Seed (designer) > Derivative (designer) > Alias (developer).\n *\n * Merge seed & derivative & override token and generate alias token for developer.\n */\nexport default function formatToken(derivativeToken) {\n const {\n override\n } = derivativeToken,\n restToken = __rest(derivativeToken, [\"override\"]);\n const overrideTokens = _extends({}, override);\n Object.keys(seedToken).forEach(token => {\n delete overrideTokens[token];\n });\n const mergedToken = _extends(_extends({}, restToken), overrideTokens);\n const screenXS = 480;\n const screenSM = 576;\n const screenMD = 768;\n const screenLG = 992;\n const screenXL = 1200;\n const screenXXL = 1600;\n const screenXXXL = 2000;\n // Generate alias token\n const aliasToken = _extends(_extends(_extends({}, mergedToken), {\n colorLink: mergedToken.colorInfoText,\n colorLinkHover: mergedToken.colorInfoHover,\n colorLinkActive: mergedToken.colorInfoActive,\n // ============== Background ============== //\n colorFillContent: mergedToken.colorFillSecondary,\n colorFillContentHover: mergedToken.colorFill,\n colorFillAlter: mergedToken.colorFillQuaternary,\n colorBgContainerDisabled: mergedToken.colorFillTertiary,\n // ============== Split ============== //\n colorBorderBg: mergedToken.colorBgContainer,\n colorSplit: getAlphaColor(mergedToken.colorBorderSecondary, mergedToken.colorBgContainer),\n // ============== Text ============== //\n colorTextPlaceholder: mergedToken.colorTextQuaternary,\n colorTextDisabled: mergedToken.colorTextQuaternary,\n colorTextHeading: mergedToken.colorText,\n colorTextLabel: mergedToken.colorTextSecondary,\n colorTextDescription: mergedToken.colorTextTertiary,\n colorTextLightSolid: mergedToken.colorWhite,\n colorHighlight: mergedToken.colorError,\n colorBgTextHover: mergedToken.colorFillSecondary,\n colorBgTextActive: mergedToken.colorFill,\n colorIcon: mergedToken.colorTextTertiary,\n colorIconHover: mergedToken.colorText,\n colorErrorOutline: getAlphaColor(mergedToken.colorErrorBg, mergedToken.colorBgContainer),\n colorWarningOutline: getAlphaColor(mergedToken.colorWarningBg, mergedToken.colorBgContainer),\n // Font\n fontSizeIcon: mergedToken.fontSizeSM,\n // Control\n lineWidth: mergedToken.lineWidth,\n controlOutlineWidth: mergedToken.lineWidth * 2,\n // Checkbox size and expand icon size\n controlInteractiveSize: mergedToken.controlHeight / 2,\n controlItemBgHover: mergedToken.colorFillTertiary,\n controlItemBgActive: mergedToken.colorPrimaryBg,\n controlItemBgActiveHover: mergedToken.colorPrimaryBgHover,\n controlItemBgActiveDisabled: mergedToken.colorFill,\n controlTmpOutline: mergedToken.colorFillQuaternary,\n controlOutline: getAlphaColor(mergedToken.colorPrimaryBg, mergedToken.colorBgContainer),\n lineType: mergedToken.lineType,\n borderRadius: mergedToken.borderRadius,\n borderRadiusXS: mergedToken.borderRadiusXS,\n borderRadiusSM: mergedToken.borderRadiusSM,\n borderRadiusLG: mergedToken.borderRadiusLG,\n fontWeightStrong: 600,\n opacityLoading: 0.65,\n linkDecoration: 'none',\n linkHoverDecoration: 'none',\n linkFocusDecoration: 'none',\n controlPaddingHorizontal: 12,\n controlPaddingHorizontalSM: 8,\n paddingXXS: mergedToken.sizeXXS,\n paddingXS: mergedToken.sizeXS,\n paddingSM: mergedToken.sizeSM,\n padding: mergedToken.size,\n paddingMD: mergedToken.sizeMD,\n paddingLG: mergedToken.sizeLG,\n paddingXL: mergedToken.sizeXL,\n paddingContentHorizontalLG: mergedToken.sizeLG,\n paddingContentVerticalLG: mergedToken.sizeMS,\n paddingContentHorizontal: mergedToken.sizeMS,\n paddingContentVertical: mergedToken.sizeSM,\n paddingContentHorizontalSM: mergedToken.size,\n paddingContentVerticalSM: mergedToken.sizeXS,\n marginXXS: mergedToken.sizeXXS,\n marginXS: mergedToken.sizeXS,\n marginSM: mergedToken.sizeSM,\n margin: mergedToken.size,\n marginMD: mergedToken.sizeMD,\n marginLG: mergedToken.sizeLG,\n marginXL: mergedToken.sizeXL,\n marginXXL: mergedToken.sizeXXL,\n boxShadow: `\n 0 1px 2px 0 rgba(0, 0, 0, 0.03),\n 0 1px 6px -1px rgba(0, 0, 0, 0.02),\n 0 2px 4px 0 rgba(0, 0, 0, 0.02)\n `,\n boxShadowSecondary: `\n 0 6px 16px 0 rgba(0, 0, 0, 0.08),\n 0 3px 6px -4px rgba(0, 0, 0, 0.12),\n 0 9px 28px 8px rgba(0, 0, 0, 0.05)\n `,\n boxShadowTertiary: `\n 0 1px 2px 0 rgba(0, 0, 0, 0.03),\n 0 1px 6px -1px rgba(0, 0, 0, 0.02),\n 0 2px 4px 0 rgba(0, 0, 0, 0.02)\n `,\n screenXS,\n screenXSMin: screenXS,\n screenXSMax: screenSM - 1,\n screenSM,\n screenSMMin: screenSM,\n screenSMMax: screenMD - 1,\n screenMD,\n screenMDMin: screenMD,\n screenMDMax: screenLG - 1,\n screenLG,\n screenLGMin: screenLG,\n screenLGMax: screenXL - 1,\n screenXL,\n screenXLMin: screenXL,\n screenXLMax: screenXXL - 1,\n screenXXL,\n screenXXLMin: screenXXL,\n screenXXLMax: screenXXXL - 1,\n screenXXXL,\n screenXXXLMin: screenXXXL,\n // FIXME: component box-shadow, should be removed\n boxShadowPopoverArrow: '3px 3px 7px rgba(0, 0, 0, 0.1)',\n boxShadowCard: `\n 0 1px 2px -2px ${new TinyColor('rgba(0, 0, 0, 0.16)').toRgbString()},\n 0 3px 6px 0 ${new TinyColor('rgba(0, 0, 0, 0.12)').toRgbString()},\n 0 5px 12px 4px ${new TinyColor('rgba(0, 0, 0, 0.09)').toRgbString()}\n `,\n boxShadowDrawerRight: `\n -6px 0 16px 0 rgba(0, 0, 0, 0.08),\n -3px 0 6px -4px rgba(0, 0, 0, 0.12),\n -9px 0 28px 8px rgba(0, 0, 0, 0.05)\n `,\n boxShadowDrawerLeft: `\n 6px 0 16px 0 rgba(0, 0, 0, 0.08),\n 3px 0 6px -4px rgba(0, 0, 0, 0.12),\n 9px 0 28px 8px rgba(0, 0, 0, 0.05)\n `,\n boxShadowDrawerUp: `\n 0 6px 16px 0 rgba(0, 0, 0, 0.08),\n 0 3px 6px -4px rgba(0, 0, 0, 0.12),\n 0 9px 28px 8px rgba(0, 0, 0, 0.05)\n `,\n boxShadowDrawerDown: `\n 0 -6px 16px 0 rgba(0, 0, 0, 0.08),\n 0 -3px 6px -4px rgba(0, 0, 0, 0.12),\n 0 -9px 28px 8px rgba(0, 0, 0, 0.05)\n `,\n boxShadowTabsOverflowLeft: 'inset 10px 0 8px -8px rgba(0, 0, 0, 0.08)',\n boxShadowTabsOverflowRight: 'inset -10px 0 8px -8px rgba(0, 0, 0, 0.08)',\n boxShadowTabsOverflowTop: 'inset 0 10px 8px -8px rgba(0, 0, 0, 0.08)',\n boxShadowTabsOverflowBottom: 'inset 0 -10px 8px -8px rgba(0, 0, 0, 0.08)'\n }), overrideTokens);\n return aliasToken;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nexport { operationUnit } from './operationUnit';\nexport { roundedArrow } from './roundedArrow';\nexport { genPresetColor } from './presetColor';\nexport const textEllipsis = {\n overflow: 'hidden',\n whiteSpace: 'nowrap',\n textOverflow: 'ellipsis'\n};\nexport const resetComponent = token => ({\n boxSizing: 'border-box',\n margin: 0,\n padding: 0,\n color: token.colorText,\n fontSize: token.fontSize,\n // font-variant: @font-variant-base;\n lineHeight: token.lineHeight,\n listStyle: 'none',\n // font-feature-settings: @font-feature-settings-base;\n fontFamily: token.fontFamily\n});\nexport const resetIcon = () => ({\n display: 'inline-flex',\n alignItems: 'center',\n color: 'inherit',\n fontStyle: 'normal',\n lineHeight: 0,\n textAlign: 'center',\n textTransform: 'none',\n // for SVG icon, see https://blog.prototypr.io/align-svg-icons-to-text-and-say-goodbye-to-font-icons-d44b3d7b26b4\n verticalAlign: '-0.125em',\n textRendering: 'optimizeLegibility',\n '-webkit-font-smoothing': 'antialiased',\n '-moz-osx-font-smoothing': 'grayscale',\n '> *': {\n lineHeight: 1\n },\n svg: {\n display: 'inline-block'\n }\n});\nexport const clearFix = () => ({\n // https://github.com/ant-design/ant-design/issues/21301#issuecomment-583955229\n '&::before': {\n display: 'table',\n content: '\"\"'\n },\n '&::after': {\n // https://github.com/ant-design/ant-design/issues/21864\n display: 'table',\n clear: 'both',\n content: '\"\"'\n }\n});\nexport const genLinkStyle = token => ({\n a: {\n color: token.colorLink,\n textDecoration: token.linkDecoration,\n backgroundColor: 'transparent',\n outline: 'none',\n cursor: 'pointer',\n transition: `color ${token.motionDurationSlow}`,\n '-webkit-text-decoration-skip': 'objects',\n '&:hover': {\n color: token.colorLinkHover\n },\n '&:active': {\n color: token.colorLinkActive\n },\n [`&:active,\n &:hover`]: {\n textDecoration: token.linkHoverDecoration,\n outline: 0\n },\n // https://github.com/ant-design/ant-design/issues/22503\n '&:focus': {\n textDecoration: token.linkFocusDecoration,\n outline: 0\n },\n '&[disabled]': {\n color: token.colorTextDisabled,\n cursor: 'not-allowed'\n }\n }\n});\nexport const genCommonStyle = (token, componentPrefixCls) => {\n const {\n fontFamily,\n fontSize\n } = token;\n const rootPrefixSelector = `[class^=\"${componentPrefixCls}\"], [class*=\" ${componentPrefixCls}\"]`;\n return {\n [rootPrefixSelector]: {\n fontFamily,\n fontSize,\n boxSizing: 'border-box',\n '&::before, &::after': {\n boxSizing: 'border-box'\n },\n [rootPrefixSelector]: {\n boxSizing: 'border-box',\n '&::before, &::after': {\n boxSizing: 'border-box'\n }\n }\n }\n };\n};\nexport const genFocusOutline = token => ({\n outline: `${token.lineWidthBold}px solid ${token.colorPrimaryBorder}`,\n outlineOffset: 1,\n transition: 'outline-offset 0s, outline 0s'\n});\nexport const genFocusStyle = token => ({\n '&:focus-visible': _extends({}, genFocusOutline(token))\n});","import { computed, inject, provide } from 'vue';\nimport { objectType } from '../_util/type';\nexport const defaultIconPrefixCls = 'anticon';\nexport const GlobalFormContextKey = Symbol('GlobalFormContextKey');\nexport const useProvideGlobalForm = state => {\n provide(GlobalFormContextKey, state);\n};\nexport const useInjectGlobalForm = () => {\n return inject(GlobalFormContextKey, {\n validateMessages: computed(() => undefined)\n });\n};\nexport const GlobalConfigContextKey = Symbol('GlobalConfigContextKey');\nexport const configProviderProps = () => ({\n iconPrefixCls: String,\n getTargetContainer: {\n type: Function\n },\n getPopupContainer: {\n type: Function\n },\n prefixCls: String,\n getPrefixCls: {\n type: Function\n },\n renderEmpty: {\n type: Function\n },\n transformCellText: {\n type: Function\n },\n csp: objectType(),\n input: objectType(),\n autoInsertSpaceInButton: {\n type: Boolean,\n default: undefined\n },\n locale: objectType(),\n pageHeader: objectType(),\n componentSize: {\n type: String\n },\n componentDisabled: {\n type: Boolean,\n default: undefined\n },\n direction: {\n type: String,\n default: 'ltr'\n },\n space: objectType(),\n virtual: {\n type: Boolean,\n default: undefined\n },\n dropdownMatchSelectWidth: {\n type: [Number, Boolean],\n default: true\n },\n form: objectType(),\n pagination: objectType(),\n theme: objectType(),\n select: objectType(),\n wave: objectType()\n});\nexport const configProviderKey = Symbol('configProvider');\nexport const defaultConfigProvider = {\n getPrefixCls: (suffixCls, customizePrefixCls) => {\n if (customizePrefixCls) return customizePrefixCls;\n return suffixCls ? `ant-${suffixCls}` : 'ant';\n },\n iconPrefixCls: computed(() => defaultIconPrefixCls),\n getPopupContainer: computed(() => () => document.body),\n direction: computed(() => 'ltr')\n};\nexport const useConfigContextInject = () => {\n return inject(configProviderKey, defaultConfigProvider);\n};\nexport const useConfigContextProvider = props => {\n return provide(configProviderKey, props);\n};","import _extends from \"@babel/runtime/helpers/esm/extends\";\n/* eslint-disable no-redeclare */\nimport { useStyleRegister } from '../../_util/cssinjs';\nimport { genCommonStyle, genLinkStyle } from '../../style';\nimport { mergeToken, statisticToken, useToken } from '../internal';\nimport { computed } from 'vue';\nimport { useConfigContextInject } from '../../config-provider/context';\nexport default function genComponentStyleHook(component, styleFn, getDefaultToken) {\n return _prefixCls => {\n const prefixCls = computed(() => _prefixCls === null || _prefixCls === void 0 ? void 0 : _prefixCls.value);\n const [theme, token, hashId] = useToken();\n const {\n getPrefixCls,\n iconPrefixCls\n } = useConfigContextInject();\n const rootPrefixCls = computed(() => getPrefixCls());\n const sharedInfo = computed(() => {\n return {\n theme: theme.value,\n token: token.value,\n hashId: hashId.value,\n path: ['Shared', rootPrefixCls.value]\n };\n });\n // Generate style for all a tags in antd component.\n useStyleRegister(sharedInfo, () => [{\n // Link\n '&': genLinkStyle(token.value)\n }]);\n const componentInfo = computed(() => {\n return {\n theme: theme.value,\n token: token.value,\n hashId: hashId.value,\n path: [component, prefixCls.value, iconPrefixCls.value]\n };\n });\n return [useStyleRegister(componentInfo, () => {\n const {\n token: proxyToken,\n flush\n } = statisticToken(token.value);\n const defaultComponentToken = typeof getDefaultToken === 'function' ? getDefaultToken(proxyToken) : getDefaultToken;\n const mergedComponentToken = _extends(_extends({}, defaultComponentToken), token.value[component]);\n const componentCls = `.${prefixCls.value}`;\n const mergedToken = mergeToken(proxyToken, {\n componentCls,\n prefixCls: prefixCls.value,\n iconCls: `.${iconPrefixCls.value}`,\n antCls: `.${rootPrefixCls.value}`\n }, mergedComponentToken);\n const styleInterpolation = styleFn(mergedToken, {\n hashId: hashId.value,\n prefixCls: prefixCls.value,\n rootPrefixCls: rootPrefixCls.value,\n iconPrefixCls: iconPrefixCls.value,\n overrideComponentToken: token.value[component]\n });\n flush(component, mergedComponentToken);\n return [genCommonStyle(token.value, prefixCls.value), styleInterpolation];\n }), hashId];\n };\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nconst enableStatistic = process.env.NODE_ENV !== 'production' || typeof CSSINJS_STATISTIC !== 'undefined';\nlet recording = true;\n/**\n * This function will do as `Object.assign` in production. But will use Object.defineProperty:get to\n * pass all value access in development. To support statistic field usage with alias token.\n */\nexport function merge() {\n for (var _len = arguments.length, objs = new Array(_len), _key = 0; _key < _len; _key++) {\n objs[_key] = arguments[_key];\n }\n /* istanbul ignore next */\n if (!enableStatistic) {\n return _extends({}, ...objs);\n }\n recording = false;\n const ret = {};\n objs.forEach(obj => {\n const keys = Object.keys(obj);\n keys.forEach(key => {\n Object.defineProperty(ret, key, {\n configurable: true,\n enumerable: true,\n get: () => obj[key]\n });\n });\n });\n recording = true;\n return ret;\n}\n/** @private Internal Usage. Not use in your production. */\nexport const statistic = {};\n/** @private Internal Usage. Not use in your production. */\n// eslint-disable-next-line camelcase\nexport const _statistic_build_ = {};\n/* istanbul ignore next */\nfunction noop() {}\n/** Statistic token usage case. Should use `merge` function if you do not want spread record. */\nexport default function statisticToken(token) {\n let tokenKeys;\n let proxy = token;\n let flush = noop;\n if (enableStatistic) {\n tokenKeys = new Set();\n proxy = new Proxy(token, {\n get(obj, prop) {\n if (recording) {\n tokenKeys.add(prop);\n }\n return obj[prop];\n }\n });\n flush = (componentName, componentToken) => {\n statistic[componentName] = {\n global: Array.from(tokenKeys),\n component: componentToken\n };\n };\n }\n return {\n token: proxy,\n keys: tokenKeys,\n flush\n };\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { createTheme, useCacheToken, useStyleRegister } from '../_util/cssinjs';\nimport version from '../version';\nimport { PresetColors } from './interface';\nimport defaultDerivative from './themes/default';\nimport defaultSeedToken from './themes/seed';\nimport formatToken from './util/alias';\nimport genComponentStyleHook from './util/genComponentStyleHook';\nimport statisticToken, { merge as mergeToken, statistic } from './util/statistic';\nimport { objectType } from '../_util/type';\nimport { triggerRef, unref, defineComponent, provide, computed, inject, watch, shallowRef } from 'vue';\nconst defaultTheme = createTheme(defaultDerivative);\nexport {\n// colors\nPresetColors,\n// Statistic\nstatistic, statisticToken, mergeToken,\n// hooks\nuseStyleRegister, genComponentStyleHook };\n// ================================ Context =================================\n// To ensure snapshot stable. We disable hashed in test env.\nexport const defaultConfig = {\n token: defaultSeedToken,\n hashed: true\n};\n//defaultConfig\nconst DesignTokenContextKey = Symbol('DesignTokenContext');\nexport const globalDesignTokenApi = shallowRef();\nexport const useDesignTokenProvider = value => {\n provide(DesignTokenContextKey, value);\n watch(value, () => {\n globalDesignTokenApi.value = unref(value);\n triggerRef(globalDesignTokenApi);\n }, {\n immediate: true,\n deep: true\n });\n};\nexport const useDesignTokenInject = () => {\n return inject(DesignTokenContextKey, computed(() => globalDesignTokenApi.value || defaultConfig));\n};\nexport const DesignTokenProvider = defineComponent({\n props: {\n value: objectType()\n },\n setup(props, _ref) {\n let {\n slots\n } = _ref;\n useDesignTokenProvider(computed(() => props.value));\n return () => {\n var _a;\n return (_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots);\n };\n }\n});\n// ================================== Hook ==================================\nexport function useToken() {\n const designTokenContext = inject(DesignTokenContextKey, computed(() => globalDesignTokenApi.value || defaultConfig));\n const salt = computed(() => `${version}-${designTokenContext.value.hashed || ''}`);\n const mergedTheme = computed(() => designTokenContext.value.theme || defaultTheme);\n const cacheToken = useCacheToken(mergedTheme, computed(() => [defaultSeedToken, designTokenContext.value.token]), computed(() => ({\n salt: salt.value,\n override: _extends({\n override: designTokenContext.value.token\n }, designTokenContext.value.components),\n formatToken\n })));\n return [mergedTheme, computed(() => cacheToken.value[0]), computed(() => designTokenContext.value.hashed ? cacheToken.value[1] : '')];\n}","import { computed, inject, ref, provide } from 'vue';\nconst DisabledContextKey = Symbol('DisabledContextKey');\nexport const useInjectDisabled = () => {\n return inject(DisabledContextKey, ref(undefined));\n};\nexport const useProviderDisabled = disabled => {\n const parentDisabled = useInjectDisabled();\n provide(DisabledContextKey, computed(() => {\n var _a;\n return (_a = disabled.value) !== null && _a !== void 0 ? _a : parentDisabled.value;\n }));\n return disabled;\n};","export default {\n // Options.jsx\n items_per_page: '/ page',\n jump_to: 'Go to',\n jump_to_confirm: 'confirm',\n page: '',\n // Pagination.jsx\n prev_page: 'Previous Page',\n next_page: 'Next Page',\n prev_5: 'Previous 5 Pages',\n next_5: 'Next 5 Pages',\n prev_3: 'Previous 3 Pages',\n next_3: 'Next 3 Pages'\n};","const locale = {\n locale: 'en_US',\n today: 'Today',\n now: 'Now',\n backToToday: 'Back to today',\n ok: 'Ok',\n clear: 'Clear',\n month: 'Month',\n year: 'Year',\n timeSelect: 'select time',\n dateSelect: 'select date',\n weekSelect: 'Choose a week',\n monthSelect: 'Choose a month',\n yearSelect: 'Choose a year',\n decadeSelect: 'Choose a decade',\n yearFormat: 'YYYY',\n dateFormat: 'M/D/YYYY',\n dayFormat: 'D',\n dateTimeFormat: 'M/D/YYYY HH:mm:ss',\n monthBeforeYear: true,\n previousMonth: 'Previous month (PageUp)',\n nextMonth: 'Next month (PageDown)',\n previousYear: 'Last year (Control + left)',\n nextYear: 'Next year (Control + right)',\n previousDecade: 'Last decade',\n nextDecade: 'Next decade',\n previousCentury: 'Last century',\n nextCentury: 'Next century'\n};\nexport default locale;","const locale = {\n placeholder: 'Select time',\n rangePlaceholder: ['Start time', 'End time']\n};\nexport default locale;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport CalendarLocale from '../../vc-picker/locale/en_US';\nimport TimePickerLocale from '../../time-picker/locale/en_US';\n// Merge into a locale object\nconst locale = {\n lang: _extends({\n placeholder: 'Select date',\n yearPlaceholder: 'Select year',\n quarterPlaceholder: 'Select quarter',\n monthPlaceholder: 'Select month',\n weekPlaceholder: 'Select week',\n rangePlaceholder: ['Start date', 'End date'],\n rangeYearPlaceholder: ['Start year', 'End year'],\n rangeQuarterPlaceholder: ['Start quarter', 'End quarter'],\n rangeMonthPlaceholder: ['Start month', 'End month'],\n rangeWeekPlaceholder: ['Start week', 'End week']\n }, CalendarLocale),\n timePickerLocale: _extends({}, TimePickerLocale)\n};\n// All settings at:\n// https://github.com/ant-design/ant-design/blob/master/components/date-picker/locale/example.json\nexport default locale;","import enUS from '../../date-picker/locale/en_US';\nexport default enUS;","/* eslint-disable no-template-curly-in-string */\nimport Pagination from '../vc-pagination/locale/en_US';\nimport Calendar from '../calendar/locale/en_US';\nimport DatePicker from '../date-picker/locale/en_US';\nimport TimePicker from '../time-picker/locale/en_US';\nconst typeTemplate = '${label} is not a valid ${type}';\nconst localeValues = {\n locale: 'en',\n Pagination,\n DatePicker,\n TimePicker,\n Calendar,\n global: {\n placeholder: 'Please select'\n },\n Table: {\n filterTitle: 'Filter menu',\n filterConfirm: 'OK',\n filterReset: 'Reset',\n filterEmptyText: 'No filters',\n filterCheckall: 'Select all items',\n filterSearchPlaceholder: 'Search in filters',\n emptyText: 'No data',\n selectAll: 'Select current page',\n selectInvert: 'Invert current page',\n selectNone: 'Clear all data',\n selectionAll: 'Select all data',\n sortTitle: 'Sort',\n expand: 'Expand row',\n collapse: 'Collapse row',\n triggerDesc: 'Click to sort descending',\n triggerAsc: 'Click to sort ascending',\n cancelSort: 'Click to cancel sorting'\n },\n Tour: {\n Next: 'Next',\n Previous: 'Previous',\n Finish: 'Finish'\n },\n Modal: {\n okText: 'OK',\n cancelText: 'Cancel',\n justOkText: 'OK'\n },\n Popconfirm: {\n okText: 'OK',\n cancelText: 'Cancel'\n },\n Transfer: {\n titles: ['', ''],\n searchPlaceholder: 'Search here',\n itemUnit: 'item',\n itemsUnit: 'items',\n remove: 'Remove',\n selectCurrent: 'Select current page',\n removeCurrent: 'Remove current page',\n selectAll: 'Select all data',\n removeAll: 'Remove all data',\n selectInvert: 'Invert current page'\n },\n Upload: {\n uploading: 'Uploading...',\n removeFile: 'Remove file',\n uploadError: 'Upload error',\n previewFile: 'Preview file',\n downloadFile: 'Download file'\n },\n Empty: {\n description: 'No data'\n },\n Icon: {\n icon: 'icon'\n },\n Text: {\n edit: 'Edit',\n copy: 'Copy',\n copied: 'Copied',\n expand: 'Expand'\n },\n PageHeader: {\n back: 'Back'\n },\n Form: {\n optional: '(optional)',\n defaultValidateMessages: {\n default: 'Field validation error for ${label}',\n required: 'Please enter ${label}',\n enum: '${label} must be one of [${enum}]',\n whitespace: '${label} cannot be a blank character',\n date: {\n format: '${label} date format is invalid',\n parse: '${label} cannot be converted to a date',\n invalid: '${label} is an invalid date'\n },\n types: {\n string: typeTemplate,\n method: typeTemplate,\n array: typeTemplate,\n object: typeTemplate,\n number: typeTemplate,\n date: typeTemplate,\n boolean: typeTemplate,\n integer: typeTemplate,\n float: typeTemplate,\n regexp: typeTemplate,\n email: typeTemplate,\n url: typeTemplate,\n hex: typeTemplate\n },\n string: {\n len: '${label} must be ${len} characters',\n min: '${label} must be at least ${min} characters',\n max: '${label} must be up to ${max} characters',\n range: '${label} must be between ${min}-${max} characters'\n },\n number: {\n len: '${label} must be equal to ${len}',\n min: '${label} must be minimum ${min}',\n max: '${label} must be maximum ${max}',\n range: '${label} must be between ${min}-${max}'\n },\n array: {\n len: 'Must be ${len} ${label}',\n min: 'At least ${min} ${label}',\n max: 'At most ${max} ${label}',\n range: 'The amount of ${label} must be between ${min}-${max}'\n },\n pattern: {\n mismatch: '${label} does not match the pattern ${pattern}'\n }\n }\n },\n Image: {\n preview: 'Preview'\n },\n QRCode: {\n expired: 'QR code expired',\n refresh: 'Refresh',\n scanned: 'Scanned'\n }\n};\nexport default localeValues;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { unref, inject, defineComponent, computed } from 'vue';\nimport defaultLocaleData from './en_US';\nexport default defineComponent({\n compatConfig: {\n MODE: 3\n },\n name: 'LocaleReceiver',\n props: {\n componentName: String,\n defaultLocale: {\n type: [Object, Function]\n },\n children: {\n type: Function\n }\n },\n setup(props, _ref) {\n let {\n slots\n } = _ref;\n const localeData = inject('localeData', {});\n const locale = computed(() => {\n const {\n componentName = 'global',\n defaultLocale\n } = props;\n const locale = defaultLocale || defaultLocaleData[componentName || 'global'];\n const {\n antLocale\n } = localeData;\n const localeFromContext = componentName && antLocale ? antLocale[componentName] : {};\n return _extends(_extends({}, typeof locale === 'function' ? locale() : locale), localeFromContext || {});\n });\n const localeCode = computed(() => {\n const {\n antLocale\n } = localeData;\n const localeCode = antLocale && antLocale.locale;\n // Had use LocaleProvide but didn't set locale\n if (antLocale && antLocale.exist && !localeCode) {\n return defaultLocaleData.locale;\n }\n return localeCode;\n });\n return () => {\n const children = props.children || slots.default;\n const {\n antLocale\n } = localeData;\n return children === null || children === void 0 ? void 0 : children(locale.value, localeCode.value, antLocale);\n };\n }\n});\nexport function useLocaleReceiver(componentName, defaultLocale, propsLocale) {\n const localeData = inject('localeData', {});\n const componentLocale = computed(() => {\n const {\n antLocale\n } = localeData;\n const locale = unref(defaultLocale) || defaultLocaleData[componentName || 'global'];\n const localeFromContext = componentName && antLocale ? antLocale[componentName] : {};\n return _extends(_extends(_extends({}, typeof locale === 'function' ? locale() : locale), localeFromContext || {}), unref(propsLocale) || {});\n });\n return [componentLocale];\n}","import LocaleReceiver from '../locale/LocaleReceiver';\nexport * from '../locale/LocaleReceiver';\nexport default LocaleReceiver;","import { createVNode as _createVNode } from \"vue\";\nimport { useToken } from '../theme/internal';\nimport { TinyColor } from '@ctrl/tinycolor';\nimport { defineComponent, computed } from 'vue';\nconst Empty = defineComponent({\n compatConfig: {\n MODE: 3\n },\n setup() {\n const [, token] = useToken();\n const themeStyle = computed(() => {\n const bgColor = new TinyColor(token.value.colorBgBase);\n // Dark Theme need more dark of this\n if (bgColor.toHsl().l < 0.5) {\n return {\n opacity: 0.65\n };\n }\n return {};\n });\n return () => _createVNode(\"svg\", {\n \"style\": themeStyle.value,\n \"width\": \"184\",\n \"height\": \"152\",\n \"viewBox\": \"0 0 184 152\",\n \"xmlns\": \"http://www.w3.org/2000/svg\"\n }, [_createVNode(\"g\", {\n \"fill\": \"none\",\n \"fill-rule\": \"evenodd\"\n }, [_createVNode(\"g\", {\n \"transform\": \"translate(24 31.67)\"\n }, [_createVNode(\"ellipse\", {\n \"fill-opacity\": \".8\",\n \"fill\": \"#F5F5F7\",\n \"cx\": \"67.797\",\n \"cy\": \"106.89\",\n \"rx\": \"67.797\",\n \"ry\": \"12.668\"\n }, null), _createVNode(\"path\", {\n \"d\": \"M122.034 69.674L98.109 40.229c-1.148-1.386-2.826-2.225-4.593-2.225h-51.44c-1.766 0-3.444.839-4.592 2.225L13.56 69.674v15.383h108.475V69.674z\",\n \"fill\": \"#AEB8C2\"\n }, null), _createVNode(\"path\", {\n \"d\": \"M101.537 86.214L80.63 61.102c-1.001-1.207-2.507-1.867-4.048-1.867H31.724c-1.54 0-3.047.66-4.048 1.867L6.769 86.214v13.792h94.768V86.214z\",\n \"fill\": \"url(#linearGradient-1)\",\n \"transform\": \"translate(13.56)\"\n }, null), _createVNode(\"path\", {\n \"d\": \"M33.83 0h67.933a4 4 0 0 1 4 4v93.344a4 4 0 0 1-4 4H33.83a4 4 0 0 1-4-4V4a4 4 0 0 1 4-4z\",\n \"fill\": \"#F5F5F7\"\n }, null), _createVNode(\"path\", {\n \"d\": \"M42.678 9.953h50.237a2 2 0 0 1 2 2V36.91a2 2 0 0 1-2 2H42.678a2 2 0 0 1-2-2V11.953a2 2 0 0 1 2-2zM42.94 49.767h49.713a2.262 2.262 0 1 1 0 4.524H42.94a2.262 2.262 0 0 1 0-4.524zM42.94 61.53h49.713a2.262 2.262 0 1 1 0 4.525H42.94a2.262 2.262 0 0 1 0-4.525zM121.813 105.032c-.775 3.071-3.497 5.36-6.735 5.36H20.515c-3.238 0-5.96-2.29-6.734-5.36a7.309 7.309 0 0 1-.222-1.79V69.675h26.318c2.907 0 5.25 2.448 5.25 5.42v.04c0 2.971 2.37 5.37 5.277 5.37h34.785c2.907 0 5.277-2.421 5.277-5.393V75.1c0-2.972 2.343-5.426 5.25-5.426h26.318v33.569c0 .617-.077 1.216-.221 1.789z\",\n \"fill\": \"#DCE0E6\"\n }, null)]), _createVNode(\"path\", {\n \"d\": \"M149.121 33.292l-6.83 2.65a1 1 0 0 1-1.317-1.23l1.937-6.207c-2.589-2.944-4.109-6.534-4.109-10.408C138.802 8.102 148.92 0 161.402 0 173.881 0 184 8.102 184 18.097c0 9.995-10.118 18.097-22.599 18.097-4.528 0-8.744-1.066-12.28-2.902z\",\n \"fill\": \"#DCE0E6\"\n }, null), _createVNode(\"g\", {\n \"transform\": \"translate(149.65 15.383)\",\n \"fill\": \"#FFF\"\n }, [_createVNode(\"ellipse\", {\n \"cx\": \"20.654\",\n \"cy\": \"3.167\",\n \"rx\": \"2.849\",\n \"ry\": \"2.815\"\n }, null), _createVNode(\"path\", {\n \"d\": \"M5.698 5.63H0L2.898.704zM9.259.704h4.985V5.63H9.259z\"\n }, null)])])]);\n }\n});\nEmpty.PRESENTED_IMAGE_DEFAULT = true;\nexport default Empty;","import { createVNode as _createVNode } from \"vue\";\nimport { TinyColor } from '@ctrl/tinycolor';\nimport { computed, defineComponent } from 'vue';\nimport { useToken } from '../theme/internal';\nconst Simple = defineComponent({\n compatConfig: {\n MODE: 3\n },\n setup() {\n const [, token] = useToken();\n const color = computed(() => {\n const {\n colorFill,\n colorFillTertiary,\n colorFillQuaternary,\n colorBgContainer\n } = token.value;\n return {\n borderColor: new TinyColor(colorFill).onBackground(colorBgContainer).toHexString(),\n shadowColor: new TinyColor(colorFillTertiary).onBackground(colorBgContainer).toHexString(),\n contentColor: new TinyColor(colorFillQuaternary).onBackground(colorBgContainer).toHexString()\n };\n });\n return () => _createVNode(\"svg\", {\n \"width\": \"64\",\n \"height\": \"41\",\n \"viewBox\": \"0 0 64 41\",\n \"xmlns\": \"http://www.w3.org/2000/svg\"\n }, [_createVNode(\"g\", {\n \"transform\": \"translate(0 1)\",\n \"fill\": \"none\",\n \"fill-rule\": \"evenodd\"\n }, [_createVNode(\"ellipse\", {\n \"fill\": color.value.shadowColor,\n \"cx\": \"32\",\n \"cy\": \"33\",\n \"rx\": \"32\",\n \"ry\": \"7\"\n }, null), _createVNode(\"g\", {\n \"fill-rule\": \"nonzero\",\n \"stroke\": color.value.borderColor\n }, [_createVNode(\"path\", {\n \"d\": \"M55 12.76L44.854 1.258C44.367.474 43.656 0 42.907 0H21.093c-.749 0-1.46.474-1.947 1.257L9 12.761V22h46v-9.24z\"\n }, null), _createVNode(\"path\", {\n \"d\": \"M41.613 15.931c0-1.605.994-2.93 2.227-2.931H55v18.137C55 33.26 53.68 35 52.05 35h-40.1C10.32 35 9 33.259 9 31.137V13h11.16c1.233 0 2.227 1.323 2.227 2.928v.022c0 1.605 1.005 2.901 2.237 2.901h14.752c1.232 0 2.237-1.308 2.237-2.913v-.007z\",\n \"fill\": color.value.contentColor\n }, null)])])]);\n }\n});\nSimple.PRESENTED_IMAGE_SIMPLE = true;\nexport default Simple;","import { genComponentStyleHook, mergeToken } from '../../theme/internal';\n// ============================== Shared ==============================\nconst genSharedEmptyStyle = token => {\n const {\n componentCls,\n margin,\n marginXS,\n marginXL,\n fontSize,\n lineHeight\n } = token;\n return {\n [componentCls]: {\n marginInline: marginXS,\n fontSize,\n lineHeight,\n textAlign: 'center',\n // 原来 &-image 没有父子结构,现在为了外层承担我们的hashId,改成父子结果\n [`${componentCls}-image`]: {\n height: token.emptyImgHeight,\n marginBottom: marginXS,\n opacity: token.opacityImage,\n img: {\n height: '100%'\n },\n svg: {\n height: '100%',\n margin: 'auto'\n }\n },\n // 原来 &-footer 没有父子结构,现在为了外层承担我们的hashId,改成父子结果\n [`${componentCls}-footer`]: {\n marginTop: margin\n },\n '&-normal': {\n marginBlock: marginXL,\n color: token.colorTextDisabled,\n [`${componentCls}-image`]: {\n height: token.emptyImgHeightMD\n }\n },\n '&-small': {\n marginBlock: marginXS,\n color: token.colorTextDisabled,\n [`${componentCls}-image`]: {\n height: token.emptyImgHeightSM\n }\n }\n }\n };\n};\n// ============================== Export ==============================\nexport default genComponentStyleHook('Empty', token => {\n const {\n componentCls,\n controlHeightLG\n } = token;\n const emptyToken = mergeToken(token, {\n emptyImgCls: `${componentCls}-img`,\n emptyImgHeight: controlHeightLG * 2.5,\n emptyImgHeightMD: controlHeightLG,\n emptyImgHeightSM: controlHeightLG * 0.875\n });\n return [genSharedEmptyStyle(emptyToken)];\n});","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { createVNode as _createVNode } from \"vue\";\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { defineComponent, h } from 'vue';\nimport classNames from '../_util/classNames';\nimport LocaleReceiver from '../locale-provider/LocaleReceiver';\nimport DefaultEmptyImg from './empty';\nimport SimpleEmptyImg from './simple';\nimport { filterEmpty } from '../_util/props-util';\nimport { anyType, objectType, withInstall } from '../_util/type';\nimport useConfigInject from '../config-provider/hooks/useConfigInject';\nimport useStyle from './style';\nexport const emptyProps = () => ({\n prefixCls: String,\n imageStyle: objectType(),\n image: anyType(),\n description: anyType()\n});\nconst Empty = defineComponent({\n name: 'AEmpty',\n compatConfig: {\n MODE: 3\n },\n inheritAttrs: false,\n props: emptyProps(),\n setup(props, _ref) {\n let {\n slots = {},\n attrs\n } = _ref;\n const {\n direction,\n prefixCls: prefixClsRef\n } = useConfigInject('empty', props);\n const [wrapSSR, hashId] = useStyle(prefixClsRef);\n return () => {\n var _a, _b;\n const prefixCls = prefixClsRef.value;\n const _c = _extends(_extends({}, props), attrs),\n {\n image: mergedImage = ((_a = slots.image) === null || _a === void 0 ? void 0 : _a.call(slots)) || h(DefaultEmptyImg),\n description = ((_b = slots.description) === null || _b === void 0 ? void 0 : _b.call(slots)) || undefined,\n imageStyle,\n class: className = ''\n } = _c,\n restProps = __rest(_c, [\"image\", \"description\", \"imageStyle\", \"class\"]);\n const image = typeof mergedImage === 'function' ? mergedImage() : mergedImage;\n const isNormal = typeof image === 'object' && 'type' in image && image.type.PRESENTED_IMAGE_SIMPLE;\n return wrapSSR(_createVNode(LocaleReceiver, {\n \"componentName\": \"Empty\",\n \"children\": locale => {\n const des = typeof description !== 'undefined' ? description : locale.description;\n const alt = typeof des === 'string' ? des : 'empty';\n let imageNode = null;\n if (typeof image === 'string') {\n imageNode = _createVNode(\"img\", {\n \"alt\": alt,\n \"src\": image\n }, null);\n } else {\n imageNode = image;\n }\n return _createVNode(\"div\", _objectSpread({\n \"class\": classNames(prefixCls, className, hashId.value, {\n [`${prefixCls}-normal`]: isNormal,\n [`${prefixCls}-rtl`]: direction.value === 'rtl'\n })\n }, restProps), [_createVNode(\"div\", {\n \"class\": `${prefixCls}-image`,\n \"style\": imageStyle\n }, [imageNode]), des && _createVNode(\"p\", {\n \"class\": `${prefixCls}-description`\n }, [des]), slots.default && _createVNode(\"div\", {\n \"class\": `${prefixCls}-footer`\n }, [filterEmpty(slots.default())])]);\n }\n }, null));\n };\n }\n});\nEmpty.PRESENTED_IMAGE_DEFAULT = () => h(DefaultEmptyImg);\nEmpty.PRESENTED_IMAGE_SIMPLE = () => h(SimpleEmptyImg);\nexport default withInstall(Empty);","import { createVNode as _createVNode } from \"vue\";\nimport Empty from '../empty';\nimport useConfigInject from './hooks/useConfigInject';\nexport const DefaultRenderEmpty = props => {\n const {\n prefixCls\n } = useConfigInject('empty', props);\n const renderHtml = componentName => {\n switch (componentName) {\n case 'Table':\n case 'List':\n return _createVNode(Empty, {\n \"image\": Empty.PRESENTED_IMAGE_SIMPLE\n }, null);\n case 'Select':\n case 'TreeSelect':\n case 'Cascader':\n case 'Transfer':\n case 'Mentions':\n return _createVNode(Empty, {\n \"image\": Empty.PRESENTED_IMAGE_SIMPLE,\n \"class\": `${prefixCls.value}-small`\n }, null);\n default:\n return _createVNode(Empty, null, null);\n }\n };\n return renderHtml(props.componentName);\n};\nfunction renderEmpty(componentName) {\n return _createVNode(DefaultRenderEmpty, {\n \"componentName\": componentName\n }, null);\n}\nexport default renderEmpty;","import { computed, inject, ref, provide } from 'vue';\nconst SizeContextKey = Symbol('SizeContextKey');\nexport const useInjectSize = () => {\n return inject(SizeContextKey, ref(undefined));\n};\nexport const useProviderSize = size => {\n const parentSize = useInjectSize();\n provide(SizeContextKey, computed(() => size.value || parentSize.value));\n return size;\n};","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { computed, h, inject } from 'vue';\nimport { defaultConfigProvider, configProviderKey } from '../context';\nimport { useInjectDisabled } from '../DisabledContext';\nimport { DefaultRenderEmpty } from '../renderEmpty';\nimport { useInjectSize } from '../SizeContext';\nexport default ((name, props) => {\n const sizeContext = useInjectSize();\n const disabledContext = useInjectDisabled();\n const configProvider = inject(configProviderKey, _extends(_extends({}, defaultConfigProvider), {\n renderEmpty: name => h(DefaultRenderEmpty, {\n componentName: name\n })\n }));\n const prefixCls = computed(() => configProvider.getPrefixCls(name, props.prefixCls));\n const direction = computed(() => {\n var _a, _b;\n return (_a = props.direction) !== null && _a !== void 0 ? _a : (_b = configProvider.direction) === null || _b === void 0 ? void 0 : _b.value;\n });\n const iconPrefixCls = computed(() => {\n var _a;\n return (_a = props.iconPrefixCls) !== null && _a !== void 0 ? _a : configProvider.iconPrefixCls.value;\n });\n const rootPrefixCls = computed(() => configProvider.getPrefixCls());\n const autoInsertSpaceInButton = computed(() => {\n var _a;\n return (_a = configProvider.autoInsertSpaceInButton) === null || _a === void 0 ? void 0 : _a.value;\n });\n const renderEmpty = configProvider.renderEmpty;\n const space = configProvider.space;\n const pageHeader = configProvider.pageHeader;\n const form = configProvider.form;\n const getTargetContainer = computed(() => {\n var _a, _b;\n return (_a = props.getTargetContainer) !== null && _a !== void 0 ? _a : (_b = configProvider.getTargetContainer) === null || _b === void 0 ? void 0 : _b.value;\n });\n const getPopupContainer = computed(() => {\n var _a, _b, _c;\n return (_b = (_a = props.getContainer) !== null && _a !== void 0 ? _a : props.getPopupContainer) !== null && _b !== void 0 ? _b : (_c = configProvider.getPopupContainer) === null || _c === void 0 ? void 0 : _c.value;\n });\n const dropdownMatchSelectWidth = computed(() => {\n var _a, _b;\n return (_a = props.dropdownMatchSelectWidth) !== null && _a !== void 0 ? _a : (_b = configProvider.dropdownMatchSelectWidth) === null || _b === void 0 ? void 0 : _b.value;\n });\n const virtual = computed(() => {\n var _a;\n return (props.virtual === undefined ? ((_a = configProvider.virtual) === null || _a === void 0 ? void 0 : _a.value) !== false : props.virtual !== false) && dropdownMatchSelectWidth.value !== false;\n });\n const size = computed(() => props.size || sizeContext.value);\n const autocomplete = computed(() => {\n var _a, _b, _c;\n return (_a = props.autocomplete) !== null && _a !== void 0 ? _a : (_c = (_b = configProvider.input) === null || _b === void 0 ? void 0 : _b.value) === null || _c === void 0 ? void 0 : _c.autocomplete;\n });\n const disabled = computed(() => {\n var _a;\n return (_a = props.disabled) !== null && _a !== void 0 ? _a : disabledContext.value;\n });\n const csp = computed(() => {\n var _a;\n return (_a = props.csp) !== null && _a !== void 0 ? _a : configProvider.csp;\n });\n const wave = computed(() => {\n var _a, _b;\n return (_a = props.wave) !== null && _a !== void 0 ? _a : (_b = configProvider.wave) === null || _b === void 0 ? void 0 : _b.value;\n });\n return {\n configProvider,\n prefixCls,\n direction,\n size,\n getTargetContainer,\n getPopupContainer,\n space,\n pageHeader,\n form,\n autoInsertSpaceInButton,\n renderEmpty,\n virtual,\n dropdownMatchSelectWidth,\n rootPrefixCls,\n getPrefixCls: configProvider.getPrefixCls,\n autocomplete,\n csp,\n iconPrefixCls,\n disabled,\n select: configProvider.select,\n wave\n };\n});","export function getMotion(_ref) {\n let {\n prefixCls,\n animation,\n transitionName\n } = _ref;\n if (animation) {\n return {\n name: `${prefixCls}-${animation}`\n };\n }\n if (transitionName) {\n return {\n name: transitionName\n };\n }\n return {};\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { nextTick } from 'vue';\nimport { tuple } from './type';\nconst SelectPlacements = tuple('bottomLeft', 'bottomRight', 'topLeft', 'topRight');\nconst getTransitionDirection = placement => {\n if (placement !== undefined && (placement === 'topLeft' || placement === 'topRight')) {\n return `slide-down`;\n }\n return `slide-up`;\n};\nexport const getTransitionProps = function (transitionName) {\n let opt = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const transitionProps = transitionName ? _extends({\n name: transitionName,\n appear: true,\n // type: 'animation',\n // appearFromClass: `${transitionName}-appear ${transitionName}-appear-prepare`,\n // appearActiveClass: `antdv-base-transtion`,\n // appearToClass: `${transitionName}-appear ${transitionName}-appear-active`,\n enterFromClass: `${transitionName}-enter ${transitionName}-enter-prepare ${transitionName}-enter-start`,\n enterActiveClass: `${transitionName}-enter ${transitionName}-enter-prepare`,\n enterToClass: `${transitionName}-enter ${transitionName}-enter-active`,\n leaveFromClass: ` ${transitionName}-leave`,\n leaveActiveClass: `${transitionName}-leave ${transitionName}-leave-active`,\n leaveToClass: `${transitionName}-leave ${transitionName}-leave-active`\n }, opt) : _extends({\n css: false\n }, opt);\n return transitionProps;\n};\nexport const getTransitionGroupProps = function (transitionName) {\n let opt = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {};\n const transitionProps = transitionName ? _extends({\n name: transitionName,\n appear: true,\n // appearFromClass: `${transitionName}-appear ${transitionName}-appear-prepare`,\n appearActiveClass: `${transitionName}`,\n appearToClass: `${transitionName}-appear ${transitionName}-appear-active`,\n enterFromClass: `${transitionName}-appear ${transitionName}-enter ${transitionName}-appear-prepare ${transitionName}-enter-prepare`,\n enterActiveClass: `${transitionName}`,\n enterToClass: `${transitionName}-enter ${transitionName}-appear ${transitionName}-appear-active ${transitionName}-enter-active`,\n leaveActiveClass: `${transitionName} ${transitionName}-leave`,\n leaveToClass: `${transitionName}-leave-active`\n }, opt) : _extends({\n css: false\n }, opt);\n return transitionProps;\n};\n// ================== Collapse Motion ==================\nconst getCollapsedHeight = () => ({\n height: 0,\n opacity: 0\n});\nconst getRealHeight = node => ({\n height: `${node.scrollHeight}px`,\n opacity: 1\n});\nconst getCurrentHeight = node => ({\n height: `${node.offsetHeight}px`\n});\nconst collapseMotion = function () {\n let name = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : 'ant-motion-collapse';\n let style = arguments.length > 1 ? arguments[1] : undefined;\n let className = arguments.length > 2 ? arguments[2] : undefined;\n return {\n name,\n appear: true,\n css: true,\n onBeforeEnter: node => {\n className.value = name;\n style.value = getCollapsedHeight(node);\n },\n onEnter: node => {\n nextTick(() => {\n style.value = getRealHeight(node);\n });\n },\n onAfterEnter: () => {\n className.value = '';\n style.value = {};\n },\n onBeforeLeave: node => {\n className.value = name;\n style.value = getCurrentHeight(node);\n },\n onLeave: node => {\n setTimeout(() => {\n style.value = getCollapsedHeight(node);\n });\n },\n onAfterLeave: () => {\n className.value = '';\n style.value = {};\n }\n };\n};\nconst getTransitionName = (rootPrefixCls, motion, transitionName) => {\n if (transitionName !== undefined) {\n return transitionName;\n }\n return `${rootPrefixCls}-${motion}`;\n};\nexport { collapseMotion, getTransitionName, getTransitionDirection };","import { computed, inject, provide } from 'vue';\nconst PortalContextKey = Symbol('PortalContextKey');\nexport const useProvidePortal = function (instance) {\n let config = arguments.length > 1 && arguments[1] !== undefined ? arguments[1] : {\n inTriggerContext: true\n };\n provide(PortalContextKey, {\n inTriggerContext: config.inTriggerContext,\n shouldRender: computed(() => {\n const {\n sPopupVisible,\n popupRef,\n forceRender,\n autoDestroy\n } = instance || {};\n // if (popPortal) return true;\n let shouldRender = false;\n if (sPopupVisible || popupRef || forceRender) {\n shouldRender = true;\n }\n if (!sPopupVisible && autoDestroy) {\n shouldRender = false;\n }\n return shouldRender;\n })\n });\n};\nexport const useInjectPortal = () => {\n useProvidePortal({}, {\n inTriggerContext: false\n });\n const portalContext = inject(PortalContextKey, {\n shouldRender: computed(() => false),\n inTriggerContext: false\n });\n return {\n shouldRender: computed(() => portalContext.shouldRender.value || portalContext.inTriggerContext === false)\n };\n};","import { createVNode as _createVNode, resolveDirective as _resolveDirective } from \"vue\";\nimport PropTypes from './vue-types';\nimport { defineComponent, nextTick, onBeforeMount, onMounted, onUpdated, Teleport, watch } from 'vue';\nimport { useInjectPortal } from '../vc-trigger/context';\nexport default defineComponent({\n compatConfig: {\n MODE: 3\n },\n name: 'Portal',\n inheritAttrs: false,\n props: {\n getContainer: PropTypes.func.isRequired,\n didUpdate: Function\n },\n setup(props, _ref) {\n let {\n slots\n } = _ref;\n let isSSR = true;\n // getContainer 不会改变,不用响应式\n let container;\n const {\n shouldRender\n } = useInjectPortal();\n function setContainer() {\n if (shouldRender.value) {\n container = props.getContainer();\n }\n }\n onBeforeMount(() => {\n isSSR = false;\n // drawer\n setContainer();\n });\n onMounted(() => {\n if (container) return;\n // https://github.com/vueComponent/ant-design-vue/issues/6937\n setContainer();\n });\n const stopWatch = watch(shouldRender, () => {\n if (shouldRender.value && !container) {\n container = props.getContainer();\n }\n if (container) {\n stopWatch();\n }\n });\n onUpdated(() => {\n nextTick(() => {\n var _a;\n if (shouldRender.value) {\n (_a = props.didUpdate) === null || _a === void 0 ? void 0 : _a.call(props, props);\n }\n });\n });\n // onBeforeUnmount(() => {\n // if (container && container.parentNode) {\n // container.parentNode.removeChild(container);\n // }\n // });\n return () => {\n var _a;\n if (!shouldRender.value) return null;\n if (isSSR) {\n return (_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots);\n }\n return container ? _createVNode(Teleport, {\n \"to\": container\n }, slots) : null;\n };\n }\n});","import type { TableColumn } from 'liyu-pc-base/typing';\nimport type { Record, SearchConfig } from 'liyu-pc-base/components/remotePages/typing';\n\nimport { reactive } from 'vue';\n\nexport default () => {\n const search_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'inline',\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '接口名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写接口名称',\n },\n {\n type: 'input',\n name: 'url',\n label: '接口url',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写接口url',\n },\n {\n type: 'radio',\n name: 'is_auth',\n label: '是否需要授权',\n disabled: false,\n labelKey: 'name',\n valueKey: 'value',\n placeholder: '请选择是否授权',\n datasource: 'is_auth',\n mode: 'default',\n },\n {\n type: 'radio',\n name: 'is_active',\n label: '状态',\n disabled: false,\n defaultValue: '',\n labelKey: 'name',\n valueKey: 'value',\n placeholder: '请选择状态',\n datasource: 'is_active',\n mode: 'default',\n },\n ],\n rules: {},\n model: reactive({\n is_active: true,\n is_auth: '',\n name: '',\n url: null,\n }),\n options: {\n is_active: [\n { name: '全部', value: '' },\n { name: '正常', value: true },\n { name: '作废', value: false },\n ],\n is_auth: [\n { name: '全部', value: '' },\n { name: '是', value: true },\n { name: '否', value: false },\n ],\n },\n default_column_field: ['is_auth'],\n };\n\n const edit_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: [],\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '接口名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '接口名称',\n },\n {\n type: 'input',\n name: 'url',\n label: '绝对路径',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '绝对路径',\n },\n {\n type: 'radio',\n name: 'is_auth', // 传值字段\n label: '是否需要授权',\n disabled: false,\n labelKey: 'name', // options数据\n valueKey: 'value',\n placeholder: '请选择是否授权',\n datasource: 'is_auth', // 接参字段\n },\n ],\n rules: {\n name: [{ required: true, message: '请输入接口名称' }],\n url: [{ required: true, message: '请输入绝对路径' }],\n },\n model: {\n name: '',\n url: '',\n is_auth: null,\n },\n options: {\n is_auth: [\n { name: '是', value: true },\n { name: '否', value: false },\n ],\n },\n };\n\n const update_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: [],\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '接口名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '接口名称',\n },\n {\n type: 'input',\n name: 'url',\n label: '绝对路径',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '绝对路径',\n },\n {\n type: 'radio',\n name: 'is_auth', // 传值字段\n label: '是否需要授权',\n disabled: false,\n labelKey: 'name', // options数据\n valueKey: 'value',\n placeholder: '请选择是否授权',\n datasource: 'is_auth', // 接参字段\n },\n ],\n rules: {},\n model: reactive({\n name: '',\n url: '',\n is_auth: null,\n }),\n options: {\n is_auth: [\n { name: '是', value: true },\n { name: '否', value: false },\n ],\n },\n };\n\n const titleList = {\n title: '接口列表',\n addModalTitle: '新建接口',\n updateTitle: '修改',\n is_create: false, // 是否有【新建】按钮\n is_update: false, // 是否有【修改】按钮\n is_remove: false, // 是否有【删除】按钮\n is_recover: false, // 是否有【恢复】按钮\n };\n\n const api_fields: Record = {\n update: {\n apiurl_id: 'id',\n },\n delete: {\n apiurl_id: 'id',\n },\n recover: {\n apiurl_id: 'id',\n },\n updateData: {\n apiurl_id: 'id',\n },\n };\n\n const baseColumns: TableColumn[] = [\n {\n title: '序号',\n width: 50,\n dataIndex: 'index',\n checked: true,\n fixed: 'left',\n },\n {\n title: '名称',\n dataIndex: 'name',\n checked: true,\n fixed: 'left',\n },\n {\n title: 'url',\n dataIndex: 'url',\n checked: true,\n },\n {\n title: '是否需要授权',\n width: 130,\n dataIndex: 'is_auth',\n cellComponent: 'boolean',\n checked: true,\n name1: '是',\n name2: '否',\n },\n {\n title: '是否可用',\n width: 100,\n dataIndex: 'is_active',\n checked: true,\n resizable: true,\n cellComponent: 'boolean',\n name1: '可用',\n name2: '禁用',\n filterMultiple: false,\n filters: [\n { text: '全部', value: '' },\n { text: '可用', value: 'true' },\n { text: '禁用', value: 'false' },\n ],\n },\n ];\n\n return {\n searchConfig: search_config,\n formModalConfig: edit_model_config,\n updateFormModalConfig: update_model_config,\n queryData: '/permission/query_url_not_bind_menu_list',\n addData: null,\n updateData: null,\n removeData: null,\n recoverData: null,\n baseColumns: baseColumns,\n titleList: titleList,\n api_fields: api_fields,\n base_search_condition_config_list: [],\n default_search_condition_config_list: [[]],\n condition_group_config_list: [],\n is_show_advantage: false,\n is_show_normal_search: true,\n is_only_show_advantage: false,\n is_only_show_normal_search: true,\n queryConditionGroupData: null,\n isView: false,\n };\n};\n","import { useRequest } from 'liyu-pc-base/init-plugin';\n\nexport async function queryApiurl(params?: { [key: string]: any }): Promise<RoleResponse> {\n return useRequest().post('/permission/query_apiurl_list', params);\n}\n\nexport async function removeUrl(params: Record<string, any>) {\n return useRequest().post('/permission/delete_apiurl', params);\n}\n\nexport async function recoverUrl(params: Record<string, any>) {\n return useRequest().post('/permission/recover_apiurl', params);\n}\n\nexport async function addURL(params: Record<string, any>) {\n return useRequest().post('/permission/create_apiurl', params);\n}\n\nexport async function updateUrl(params: Record<string, any>) {\n return useRequest().post('/permission/update_apiurl', params);\n}\n\nexport async function import_apiurl(params: Record<string, any>) {\n return useRequest().post('/permission/import_apiurl', params);\n}\n\nexport async function queryUrlNotBind(params?: { [key: string]: any }): Promise<RoleResponse> {\n return useRequest().post('/permission/query_url_not_bind_menu_list', params);\n}\n\nexport async function change_apiurl_auth(params?: { [key: string]: any }): Promise<RoleResponse> {\n return useRequest().post('/permission/change_apiurl_auth', params);\n}\n\ninterface RuleItem {\n key: string | number;\n id: number;\n callNo: number;\n avatar: string;\n desc: string;\n disabled: false;\n href: string;\n name: string;\n owner: string;\n progress: number;\n status: number;\n updatedAt: string;\n createdAt: string;\n}\n\ninterface RoleResponse {\n current: number;\n data: RuleItem[];\n pageSize: string;\n success: boolean;\n total: number;\n}\n","import modalBox from 'liyu-pc-base/components/form-modal/modal-tools';\nimport { createVNode, reactive } from 'vue';\nimport { message, Modal } from 'ant-design-vue';\nimport { change_apiurl_auth, import_apiurl } from 'liyu-pc-base/api/permission/apiurl-manage';\nimport { ExclamationCircleOutlined } from '@ant-design/icons-vue';\nimport { event_obj } from 'liyu-pc-base/init-plugin';\nimport type { BtnListConfig, HeadBtnListConfig } from 'liyu-pc-base/api/typing';\nexport const btn_list: BtnListConfig = [\n {\n name: '设为需要授权',\n type: 'dropdown',\n clazz: 'primary',\n is_show: ({ record }) => {\n return record.is_active && !record.is_auth;\n },\n cb: ({ record, current_org }) => {\n Modal.confirm({\n title: '是否设为需要授权?',\n icon: createVNode(ExclamationCircleOutlined),\n onOk() {\n return new Promise(resolve => {\n change_apiurl_auth({\n org_id: current_org.id,\n apiurl_id: record.id,\n is_auth: true,\n }).then((res: any) => {\n message.success('操作成功');\n Object.assign(record, res);\n resolve(null);\n event_obj().emit('refresh');\n });\n }).catch(() => console.log('Oops errors!'));\n },\n onCancel() {},\n });\n },\n },\n {\n name: '设为无需授权',\n type: 'dropdown',\n clazz: 'primary',\n is_show: ({ record }) => {\n return record.is_active && record.is_auth;\n },\n cb: ({ record, current_org }) => {\n Modal.confirm({\n title: '是否设为无需授权?',\n icon: createVNode(ExclamationCircleOutlined),\n onOk() {\n return new Promise(resolve => {\n change_apiurl_auth({\n org_id: current_org.id,\n apiurl_id: record.id,\n is_auth: false,\n }).then((res: any) => {\n message.success('操作成功');\n Object.assign(record, res);\n resolve(null);\n event_obj().emit('refresh');\n });\n }).catch(() => console.log('Oops errors!'));\n },\n onCancel() {},\n });\n },\n },\n];\nexport const config = {\n creatCol: [],\n updateCol: [],\n};\n\nexport const head_btn_list: HeadBtnListConfig = [\n {\n name: '导入接口',\n type: 'dropdown',\n clazz: 'primary',\n cb: () => {\n const editModal = reactive({\n visible: true,\n title: '导入api接口json文件',\n loading: false,\n form: {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: [],\n },\n fields: [\n {\n type: 'textarea',\n name: 'api_json',\n label: '接口JSON',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '接口JSON',\n },\n ],\n rules: {\n api_json: [{ username: true, message: '请填写账号名称' }],\n },\n model: reactive({\n org_id: current_org.id,\n api_json: '',\n }),\n },\n options: {},\n ok: (payload: any) => {\n return new Promise(resolve => {\n editModal.loading = true;\n import_apiurl({\n ...payload,\n })\n .then(() => {\n message.success('导入成功');\n resolve(null);\n })\n .finally(() => {\n editModal.loading = false;\n });\n });\n },\n });\n modalBox(editModal);\n },\n },\n];\n","import type { TableColumn } from 'liyu-pc-base/typing';\nimport type { Record, SearchConfig } from 'liyu-pc-base/components/remotePages/typing';\nimport { btn_list, config, head_btn_list } from './permission-apiurl-config';\nimport { event_obj } from 'liyu-pc-base/init-plugin';\nimport { reactive } from 'vue';\n\nexport default () => {\n const search_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'inline',\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '接口名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写接口名称',\n },\n {\n type: 'input',\n name: 'url',\n label: '绝对路径url',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写绝对路径url',\n },\n {\n type: 'radio',\n name: 'is_auth',\n label: '是否需要授权',\n disabled: false,\n labelKey: 'name',\n valueKey: 'value',\n placeholder: '请选择是否授权',\n datasource: 'is_auth',\n mode: 'default',\n },\n {\n type: 'radio',\n name: 'is_active',\n label: '状态',\n disabled: false,\n defaultValue: '',\n labelKey: 'name',\n valueKey: 'value',\n placeholder: '请选择状态',\n datasource: 'is_active',\n mode: 'default',\n },\n ],\n rules: {},\n model: reactive({\n is_active: true,\n is_auth: '',\n name: '',\n url: '',\n }),\n options: {\n is_active: [\n { name: '全部', value: '' },\n { name: '正常', value: true },\n { name: '作废', value: false },\n ],\n is_auth: [\n { name: '全部', value: '' },\n { name: '是', value: true },\n { name: '否', value: false },\n ],\n },\n default_column_field: ['is_auth', 'is_active'],\n };\n\n const edit_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: config.creatCol,\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '接口名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '接口名称',\n },\n {\n type: 'input',\n name: 'url',\n label: '绝对路径',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '绝对路径',\n },\n {\n type: 'radio',\n name: 'is_auth', // 传值字段\n label: '是否需要授权',\n disabled: false,\n labelKey: 'name', // options数据\n valueKey: 'value',\n placeholder: '请选择是否授权',\n datasource: 'is_auth', // 接参字段\n },\n ],\n rules: {\n name: [{ required: true, message: '请输入接口名称' }],\n url: [{ required: true, message: '请输入绝对路径' }],\n },\n model: {\n name: '',\n url: '',\n is_auth: null,\n },\n options: {\n is_auth: [\n { name: '是', value: true },\n { name: '否', value: false },\n ],\n },\n };\n\n const update_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: config.creatCol,\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '接口名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '接口名称',\n },\n {\n type: 'input',\n name: 'url',\n label: '绝对路径',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '绝对路径',\n },\n {\n type: 'radio',\n name: 'is_auth', // 传值字段\n label: '是否需要授权',\n disabled: false,\n labelKey: 'name', // options数据\n valueKey: 'value',\n placeholder: '请选择是否授权',\n datasource: 'is_auth', // 接参字段\n },\n ],\n rules: {},\n model: reactive({\n name: '',\n url: '',\n is_auth: null,\n update_field_list: ['name', 'url', 'is_auth'],\n }),\n options: {\n is_auth: [\n { name: '是', value: true },\n { name: '否', value: false },\n ],\n },\n };\n\n const titleList = {\n title: '接口列表',\n addModalTitle: '新建接口',\n updateTitle: '修改',\n is_create: true, // 是否有【新建】按钮\n is_update: true, // 是否有【修改】按钮\n is_remove: true, // 是否有【删除】按钮\n is_recover: true, // 是否有【恢复】按钮\n };\n\n const api_fields: Record = {\n update: {\n apiurl_id: 'id',\n },\n delete: {\n apiurl_id: 'id',\n },\n recover: {\n apiurl_id: 'id',\n },\n updateData: {\n apiurl_id: 'id',\n },\n };\n\n const baseColumns: TableColumn[] = [\n {\n title: '序号',\n width: 50,\n dataIndex: 'index',\n checked: true,\n fixed: 'left',\n },\n {\n title: '名称',\n dataIndex: 'name',\n checked: true,\n fixed: 'left',\n },\n {\n title: 'url',\n dataIndex: 'url',\n checked: true,\n },\n {\n title: '接口对应菜单',\n dataIndex: 'menu_list',\n checked: true,\n cellComponent: 'menu_list',\n },\n {\n title: '是否需要授权',\n width: 130,\n dataIndex: 'is_auth',\n checked: true,\n cellComponent: 'boolean',\n name1: '是',\n name2: '否',\n },\n {\n title: '是否可用',\n width: 100,\n dataIndex: 'is_active',\n checked: true,\n resizable: true,\n cellComponent: 'boolean',\n name1: '可用',\n name2: '禁用',\n filterMultiple: false,\n filters: [\n { text: '全部', value: '' },\n { text: '可用', value: 'true' },\n { text: '禁用', value: 'false' },\n ],\n },\n {\n title: '操作',\n width: 170,\n dataIndex: 'action',\n checked: true,\n cellComponent: 'action',\n },\n ];\n\n return {\n searchConfig: search_config,\n formModalConfig: edit_model_config,\n updateFormModalConfig: update_model_config,\n queryData: '/permission/query_apiurl_list',\n addData: '/permission/create_apiurl',\n updateData: '/permission/update_apiurl',\n removeData: '/permission/delete_apiurl',\n recoverData: '/permission/recover_apiurl',\n baseColumns: baseColumns,\n titleList: titleList,\n api_fields: api_fields,\n btn_list: btn_list,\n head_btn_list: head_btn_list,\n event_obj: event_obj(),\n base_search_condition_config_list: [],\n default_search_condition_config_list: [[]],\n condition_group_config_list: [],\n is_show_advantage: false,\n is_show_normal_search: true,\n is_only_show_advantage: false,\n is_only_show_normal_search: true,\n queryConditionGroupData: null,\n isView: false,\n };\n};\n","import { TableColumn } from 'liyu-pc-base/typing';\nimport { Record, SearchConfig } from 'liyu-pc-base/components/remotePages/typing';\n\nimport { reactive } from 'vue';\n\nexport default () => {\n const search_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'inline',\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写名称',\n },\n {\n type: 'input',\n name: 'corpid',\n label: 'CorpID',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写CorpID',\n },\n {\n type: 'input',\n name: 'appid',\n label: 'APPID',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写APPID',\n },\n\n {\n type: 'input',\n name: 'appkey',\n label: 'APPKey',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写APPKey',\n },\n {\n type: 'input',\n name: 'appsecret',\n label: 'APPSecret',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写APPSecret',\n },\n {\n type: 'radio',\n name: 'is_active',\n label: '状态',\n mode: 'default',\n disabled: false,\n defaultValue: '',\n labelKey: 'name',\n valueKey: 'value',\n placeholder: '请选择状态',\n datasource: 'is_active',\n },\n ],\n rules: {},\n model: reactive({\n name: '',\n appid: '',\n corpid: '',\n appkey: '',\n appsecret: '',\n }),\n options: {\n is_active: [\n { name: '全部', value: '' },\n { name: '正常', value: true },\n { name: '作废', value: false },\n ],\n },\n };\n\n const edit_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'horizontal',\n col: [],\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写名称',\n },\n {\n type: 'input',\n name: 'corpid',\n label: 'CorpID',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写CorpID',\n },\n {\n type: 'input',\n name: 'appid',\n label: 'APPID',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写APPID',\n },\n {\n type: 'input',\n name: 'appkey',\n label: 'APPKey',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写APPKey',\n },\n {\n type: 'input',\n name: 'appsecret',\n label: 'APPSecret',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写APPSecret',\n },\n ],\n rules: {\n name: [{ required: true, message: '请输入名称' }],\n corpid: [{ required: true, message: '请填写CorpID' }],\n appid: [{ required: true, message: '请填写APPID' }],\n appkey: [{ required: true, message: '请填写APPKey' }],\n appsecret: [{ required: true, message: '请填写APPSecret' }],\n },\n model: {\n name: '',\n corpid: '',\n appid: '',\n appkey: '',\n appsecret: '',\n },\n options: {},\n };\n\n const update_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'horizontal',\n col: [],\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写名称',\n },\n {\n type: 'input',\n name: 'corpid',\n label: 'CorpID',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写CorpID',\n },\n {\n type: 'input',\n name: 'appid',\n label: 'APPID',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写APPID',\n },\n {\n type: 'input',\n name: 'appkey',\n label: 'APPKey',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写APPKey',\n },\n {\n type: 'input',\n name: 'appsecret',\n label: 'APPSecret',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写APPSecret',\n },\n ],\n rules: {\n name: [{ required: true, message: '请输入名称' }],\n corpid: [{ required: true, message: '请填写CorpID' }],\n appid: [{ required: true, message: '请填写APPID' }],\n appkey: [{ required: true, message: '请填写APPKey' }],\n appsecret: [{ required: true, message: '请填写APPSecret' }],\n },\n model: reactive({\n name: '',\n corpid: '',\n appid: '',\n appkey: '',\n appsecret: '',\n }),\n options: {},\n };\n\n const titleList = {\n title: '钉钉管理',\n addModalTitle: '新建钉钉信息',\n updateTitle: '修改',\n is_create: true, // 是否有【新建】按钮\n is_update: true, // 是否有【修改】按钮\n is_remove: true, // 是否有【删除】按钮\n is_recover: true, // 是否有【恢复】按钮\n };\n\n const api_fields: Record = {\n update: {\n token_id: 'id',\n },\n delete: {\n token_id: 'id',\n },\n recover: {\n token_id: 'id',\n },\n updateData: {\n token_id: 'id',\n },\n };\n\n const baseColumns: TableColumn[] = [\n {\n title: '序号',\n width: 50,\n dataIndex: 'index',\n checked: true,\n fixed: 'left',\n },\n {\n title: '名称',\n width: 150,\n dataIndex: 'name',\n checked: true,\n fixed: 'left',\n },\n\n {\n title: 'CorpID',\n dataIndex: 'corpid',\n checked: true,\n },\n {\n title: 'APPID',\n dataIndex: 'appid',\n checked: true,\n },\n {\n title: 'APPKey',\n dataIndex: 'appkey',\n checked: true,\n },\n {\n title: 'APPSecret',\n dataIndex: 'appsecret',\n checked: true,\n },\n\n {\n title: 'PC端首页地址',\n dataIndex: 'pcurl',\n checked: true,\n },\n\n {\n title: '是否可用',\n width: 100,\n dataIndex: 'is_active',\n checked: true,\n resizable: true,\n cellComponent: 'boolean',\n name1: '可用',\n name2: '禁用',\n filterMultiple: false,\n filters: [\n { text: '全部', value: '' },\n { text: '可用', value: 'true' },\n { text: '禁用', value: 'false' },\n ],\n },\n {\n title: '操作',\n checked: true,\n width: 50,\n dataIndex: 'action',\n cellComponent: 'action',\n fixed: 'right',\n },\n ];\n return {\n searchConfig: search_config,\n formModalConfig: edit_model_config,\n updateFormModalConfig: update_model_config,\n queryData: '/dd/query_ding_appinfo_list',\n addData: '/dd/create_ding_appinfo',\n updateData: '/dd/update_ding_appinfo',\n removeData: '/dd/delete_ding_appinfo',\n recoverData: '/dd/recover_ding_appinfo',\n baseColumns: baseColumns,\n titleList: titleList,\n api_fields: api_fields,\n base_search_condition_config_list: [],\n default_search_condition_config_list: [[]],\n condition_group_config_list: [],\n is_show_advantage: false,\n is_show_normal_search: true,\n is_only_show_advantage: false,\n is_only_show_normal_search: true,\n queryConditionGroupData: null,\n isView: false,\n is_pagination: false,\n };\n};\n","import { createVNode, reactive } from 'vue';\nimport { message, Modal, notification } from 'ant-design-vue';\nimport { event_obj, useEnv, useMenuComponents, useUserStore } from 'liyu-pc-base/init-plugin';\nimport modalBox from 'liyu-pc-base/components/form-modal/modal-tools';\nimport { addMenu, import_menu } from 'liyu-pc-base/api/permission/menu-manage';\nimport { queryOrgList } from 'liyu-pc-base/api/sys';\nimport { getApiData } from 'liyu-pc-base/api/api-model';\nimport type { BtnListConfig, HeadBtnListConfig } from 'liyu-pc-base/api/typing';\nimport { cloneDeep } from 'lodash';\nimport { ExclamationCircleOutlined } from '@ant-design/icons-vue';\n\nconst genID = (): string => {\n const array = new Uint8Array(16); // 16 字节 = 128 位\n window.crypto.getRandomValues(array);\n return Array.from(array, byte => byte.toString(16).padStart(2, '0')).join('');\n};\nconst defaultComponentTypes = [\n {\n name: '默认',\n value: '@/components/remotePages/index.vue',\n order: 0,\n },\n {\n name: '其他',\n value: null,\n order: 10,\n },\n];\nlet _allComponentTypes = null;\n\nconst getAllComponentTypes = () => {\n if (!_allComponentTypes) {\n const res = cloneDeep(defaultComponentTypes);\n const custom_menu_components = useMenuComponents();\n for (const item of custom_menu_components) {\n res.push(item);\n }\n res.sort((a, b) => a.order - b.order);\n _allComponentTypes = res;\n }\n return _allComponentTypes;\n};\nconst getComponentTypeByValue = value => {\n const all = getAllComponentTypes();\n const res = all.find(item => {\n return item.value === value;\n });\n if (!res) {\n return all.find(item => {\n return item.value === null;\n });\n } else {\n return res;\n }\n};\nexport const btn_list: BtnListConfig = [\n {\n name: '修改',\n model_kind: 'custom_component',\n type: 'dropdown',\n clazz: 'primary',\n model_config: {\n title: '修改菜单',\n component: 'menuConfig',\n init_data: {\n form_type: 'edit',\n },\n },\n },\n {\n name: '新建子菜单',\n model_kind: 'custom_component',\n type: 'dropdown',\n clazz: 'primary',\n model_config: {\n title: '新建子菜单',\n component: 'menuConfig',\n init_data: {\n form_type: 'create_sub_menu',\n },\n },\n },\n {\n name: '修改菜单帮助',\n model_kind: 'form',\n type: 'dropdown',\n clazz: 'primary',\n show_condition: [\n [\n {\n flag: 'menu_path',\n type: 'string',\n operator: 'not_blank_not_null',\n value: ['true'],\n },\n ],\n ],\n model_config: {\n title: '修改菜单帮助',\n api_fields: {\n menu_id: 'id',\n },\n form: {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: [],\n },\n dynamicFieldList: [\n {\n children: [\n {\n type: 'upload',\n label: '文件',\n disabled: false,\n access_type: 'public',\n maxCount: 1,\n listType: 'picture',\n group: 'sys',\n span: 24,\n acceptList: ['.pdf'],\n name: 'helper_files',\n placeholder: '请选择文件上传',\n pull: 0,\n push: 0,\n offset: 0,\n queryType: 'advanced',\n },\n ],\n },\n ],\n model: {\n helper_files: [],\n },\n rules: {},\n options: {},\n },\n ok_url: '/permission/update_menu_helper',\n },\n authority: 'permission/update_menu_helper',\n },\n];\n\nexport const config = {\n creatCol: [],\n updateCol: [],\n};\nexport const head_btn_list: HeadBtnListConfig = [\n {\n name: '新建菜单',\n model_kind: 'custom_component',\n type: 'dropdown',\n clazz: 'primary',\n model_config: {\n title: '新建菜单',\n component: 'menuConfig',\n init_data: {\n form_type: 'create',\n },\n },\n },\n {\n name: '批量删除',\n clazz: 'primary',\n authority: 'permission/batch_delete_menu',\n urls: ['permission/batch_delete_menu'],\n cb: ({ selectedRowKeys }) => {\n if (!selectedRowKeys || selectedRowKeys.length <= 0) {\n notification.info({\n message: '温馨提示',\n description: '请选择要操作的数据',\n });\n return;\n }\n const userStore = useUserStore();\n const current_org = userStore.currentOrg;\n Modal.confirm({\n title: () => '是否批量删除已选中数据',\n icon: () => createVNode(ExclamationCircleOutlined),\n onOk() {\n return new Promise(resolve => {\n getApiData(\n {\n org_id: current_org.id,\n menu_id: selectedRowKeys,\n },\n '/permission/batch_delete_menu',\n )\n .then((res: any) => {\n message.success('成功删除' + res.count + '条数据');\n event_obj().emit('refresh');\n })\n .finally(() => {\n resolve(null);\n });\n }).catch(() => console.log('Oops errors!'));\n },\n onCancel() {},\n });\n },\n },\n {\n name: '批量恢复',\n clazz: 'primary',\n authority: 'permission/batch_recover_menu',\n urls: ['permission/batch_recover_menu'],\n cb: ({ selectedRowKeys }) => {\n if (!selectedRowKeys || selectedRowKeys.length <= 0) {\n notification.info({\n message: '温馨提示',\n description: '请选择要操作的数据',\n });\n return;\n }\n const userStore = useUserStore();\n const current_org = userStore.currentOrg;\n Modal.confirm({\n title: () => '是否批量恢复已选中数据',\n icon: () => createVNode(ExclamationCircleOutlined),\n onOk() {\n return new Promise(resolve => {\n getApiData(\n {\n org_id: current_org.id,\n menu_id: selectedRowKeys,\n },\n '/permission/batch_recover_menu',\n )\n .then((res: any) => {\n message.success('成功恢复' + res.count + '条数据');\n event_obj().emit('refresh');\n })\n .finally(() => {\n resolve(null);\n });\n }).catch(() => console.log('Oops errors!'));\n },\n onCancel() {},\n });\n },\n },\n {\n name: '导出菜单',\n clazz: 'primary',\n model_kind: 'custom_component',\n model_config: {\n component: 'ExportMenu',\n },\n },\n {\n name: '导入菜单',\n clazz: 'primary',\n model_kind: 'custom_component',\n model_config: {\n component: 'ImportMenu',\n },\n },\n];\n","import type { TableColumn } from 'liyu-pc-base/typing';\nimport type { Record, SearchConfig } from 'liyu-pc-base/components/remotePages/typing';\nimport { btn_list, head_btn_list } from './permission-menu-config';\nimport { event_obj } from 'liyu-pc-base/init-plugin';\nimport { reactive } from 'vue';\nimport { useEnv } from 'liyu-pc-base/init-plugin';\nimport { useUserStore } from 'liyu-pc-base/init-plugin';\n\nexport default () => {\n const env = useEnv();\n const userStore = useUserStore();\n const current_org = userStore.currentOrg; // 当前组织org\n const search_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'inline',\n },\n fields: [\n {\n name: 'is_active',\n label: '是否可用',\n disabled: false,\n allowClear: true,\n placeholder: '请选择是否可用',\n type: 'select',\n labelKey: 'name',\n },\n {\n type: 'remoteselect',\n name: 'aim_org_id',\n label: '目标组织',\n disabled: false,\n placeholder: '请选择目标组织',\n datasourceType: 'remote',\n mode: 'default',\n allowClear: true,\n labelKey: 'name',\n valueKey: 'id',\n modalType: 'sys-query_org_for_login_list',\n },\n {\n type: 'input',\n name: 'name',\n label: '菜单名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写角色名称',\n },\n {\n type: 'input',\n name: 'state',\n label: '路由',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写路由',\n },\n {\n type: 'remotetreeselectpro',\n name: 'parent_id',\n label: '父级菜单',\n label_i18n: '父级菜单',\n placeholder_i18n: '请选择父级菜单',\n disabled: false,\n allowClear: true,\n defaultValue: '',\n valueKey: 'value',\n labelKey: 'title',\n placeholder: '请选择父级菜单',\n postUrl: '/permission/query_menu_list__tree',\n init_model: {\n aim_org_id: current_org?.id,\n },\n },\n ],\n rules: {},\n model: reactive({\n org_id: current_org.id,\n aim_org_id: current_org.id,\n tree_struct_simulation: true,\n is_active: true,\n get_menu: true,\n state: null,\n parent_id: null,\n name: null,\n }),\n options: {\n is_active: [\n { name: '全部', value: '' },\n { name: '可用', value: true },\n { name: '禁用', value: false },\n ],\n },\n default_column_field: ['parent_id', 'index'],\n };\n\n const titleList = {\n title: '权限管理',\n addModalTitle: '新建角色',\n updateTitle: '修改',\n is_create: false, // 是否有【新建】按钮\n is_update: false, // 是否有【修改】按钮\n is_remove: 'permission/delete_menu', // 是否有【删除】按钮\n is_recover: 'permission/recover_menu', // 是否有【恢复】按钮\n };\n\n const api_fields: Record = {\n update: {\n menu_id: 'id',\n },\n delete: {\n menu_id: 'id',\n },\n recover: {\n menu_id: 'id',\n },\n updateData: {\n org_id: 'org_id',\n menu_id: 'id',\n },\n };\n\n const baseColumns: TableColumn[] = [\n {\n title: 'id',\n dataIndex: 'id',\n width: 80,\n checked: false,\n fixed: 'left',\n },\n {\n title: '名称',\n width: 300,\n checked: true,\n dataIndex: 'name',\n fixed: 'left',\n },\n {\n title: '索引',\n width: 60,\n checked: true,\n dataIndex: 'sort',\n },\n {\n title: '菜单图标',\n width: 100,\n dataIndex: 'icon',\n checked: true,\n resizable: true,\n cellComponent: 'icon',\n },\n {\n title: ' 菜单标识',\n dataIndex: 'state',\n checked: true,\n resizable: true,\n },\n {\n title: '菜单地址',\n dataIndex: 'menu_path',\n checked: true,\n resizable: true,\n },\n {\n title: ' 路由名称',\n dataIndex: 'menu_name',\n checked: false,\n resizable: true,\n },\n {\n title: '组件地址',\n dataIndex: 'component',\n width: 300,\n checked: false,\n resizable: true,\n },\n {\n title: '隶属组织列表',\n dataIndex: 'org_id_list',\n minWidth: 400,\n checked: false,\n cellComponent: 'json',\n resizable: true,\n },\n {\n title: '平台',\n dataIndex: 'platform',\n minWidth: 100,\n checked: true,\n cellComponent: 'tag',\n contentMap: {\n '10': 'PC',\n '11': 'PC 隐藏菜单',\n '12': 'PC 隐藏子菜单',\n '20': '手机端',\n },\n colorMap: {\n '10': 'green',\n '11': 'yellow',\n '12': 'orange',\n '20': 'red',\n },\n },\n\n {\n title: '是否菜单',\n dataIndex: 'is_menu',\n width: 80,\n checked: true,\n resizable: true,\n cellComponent: 'boolean',\n name1: '菜单',\n name2: '按钮',\n },\n {\n title: '菜单帮助',\n dataIndex: 'helper_files',\n minWidth: 100,\n checked: true,\n cellComponent: 'pdf',\n formatExcelValue: 'file',\n },\n {\n title: '状态',\n width: 100,\n dataIndex: 'is_active',\n checked: true,\n resizable: true,\n cellComponent: 'boolean',\n name1: '可用',\n name2: '禁用',\n filterMultiple: false,\n filters: [\n { text: '可用', value: 'true' },\n { text: '禁用', value: 'false' },\n ],\n },\n {\n title: '对应接口',\n dataIndex: 'url_id_list',\n width: 800,\n checked: false,\n cellComponent: 'list',\n },\n {\n title: '扩展属性',\n dataIndex: 'options',\n checked: false,\n cellComponent: 'json',\n resizable: true,\n },\n {\n title: '操作',\n width: 50,\n dataIndex: 'action',\n checked: true,\n cellComponent: 'action',\n fixed: 'right',\n },\n ];\n if (env.VITE_APP_HAS_PROJECT) {\n baseColumns.splice(5, 0, {\n title: '模块',\n dataIndex: 'menu_project__name',\n minWidth: 100,\n checked: true,\n });\n search_config.fields.push({\n type: 'remotetreeselectpro',\n name: 'menu_project',\n label: '模块',\n label_i18n: '模块',\n placeholder_i18n: '请选择模块',\n disabled: false,\n allowClear: true,\n defaultValue: '',\n valueKey: 'project',\n labelKey: 'name',\n placeholder: '请选择模块',\n postUrl: '/i18n/query_language_project_list',\n });\n }\n return {\n searchConfig: search_config,\n queryData: '/permission/query_menu_list__tree',\n baseColumns,\n titleList,\n api_fields,\n btn_list,\n head_btn_list,\n event_obj: event_obj(),\n is_show_advantage: false,\n is_show_normal_search: true,\n is_only_show_advantage: false,\n is_only_show_normal_search: true,\n isView: false,\n };\n};\n","import type { TableColumn } from 'liyu-pc-base/typing';\n\nexport default () => {\n const baseColumns: TableColumn[] = [\n {\n title: '序号',\n dataIndex: 'index',\n checked: true,\n width: 70,\n fixed: 'left',\n },\n {\n title: 'ID',\n width: 150,\n dataIndex: 'id',\n checked: false,\n ellipsis: true,\n resizable: true,\n },\n {\n title: '标题',\n width: 150,\n dataIndex: 'name',\n checked: true,\n ellipsis: true,\n resizable: true,\n },\n {\n filterMultiple: true,\n cellComponent: 'tag',\n contentMap: {\n simple: '简单匹配',\n regex: '正则匹配',\n },\n colorMap: {\n simple: 'green',\n regex: 'cyan',\n },\n filters: [\n {\n value: 'simple',\n text: '简单匹配',\n },\n {\n value: 'regex',\n text: '正则匹配',\n },\n ],\n title: '匹配类型',\n width: 150,\n dataIndex: 'match_type',\n checked: true,\n ellipsis: true,\n resizable: true,\n formatExcelValue: 'tag',\n },\n {\n title: '路径匹配',\n width: 150,\n dataIndex: 'content',\n checked: true,\n ellipsis: true,\n resizable: true,\n },\n {\n title: '文件',\n width: 150,\n dataIndex: 'files',\n checked: true,\n ellipsis: true,\n resizable: true,\n cellComponent: 'pdf',\n formatExcelValue: 'file',\n },\n {\n filterMultiple: false,\n cellComponent: 'tag',\n contentMap: {\n true: '可用',\n false: '禁用',\n },\n colorMap: {\n true: 'green',\n false: 'red',\n },\n filters: [\n {\n value: 'true',\n text: '可用',\n },\n {\n value: 'false',\n text: '禁用',\n },\n ],\n title: '是否可用',\n width: 150,\n dataIndex: 'is_active',\n checked: true,\n ellipsis: true,\n resizable: true,\n formatExcelValue: 'tag',\n },\n {\n contentFunc: '({text}) => getDateTime(text)',\n title: '创建时间',\n width: 150,\n dataIndex: 'create_time',\n checked: true,\n ellipsis: true,\n resizable: true,\n },\n {\n contentFunc: '({text}) => getDateTime(text)',\n title: '更新时间',\n width: 150,\n dataIndex: 'update_time',\n checked: true,\n ellipsis: true,\n resizable: true,\n },\n ];\n const formModalConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: [],\n },\n dynamicFieldList: [\n {\n children: [\n {\n type: 'input',\n name: 'name',\n label: '标题',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写标题',\n span: 24,\n required_condition: null,\n },\n {\n type: 'radio',\n name: 'match_type',\n label: '匹配类型',\n disabled: false,\n allowClear: true,\n labelKey: 'name',\n valueKey: 'value',\n defaultValue: '',\n placeholder: '请选择匹配类型',\n span: 24,\n required_condition: null,\n queryType: 'advanced',\n },\n {\n type: 'remotecomplete',\n label: '路径匹配',\n disabled: false,\n allowClear: true,\n valueKey: 'menu_path',\n labelKeyType: 1,\n labelKey: 'name',\n labelKeyList: [],\n labelSpace: '-',\n mode: 'default',\n placeholder: '请输入内容',\n show_search: true,\n datasourceType: 'remote',\n queryType: 'advanced',\n searchConditions: [\n [\n {\n searchType: 3,\n field_name: 'is_active',\n operator: 'eq',\n value: [true],\n format: 'choices',\n class_name: 'bool',\n },\n ],\n ],\n simpleSearchConditions: [\n {\n searchType: 3,\n field_name: 'is_active',\n value: true,\n },\n ],\n postUrl: '/permission/query_menu_list',\n name: 'content',\n span: 24,\n pull: 0,\n push: 0,\n offset: 0,\n },\n {\n type: 'upload',\n label: '文件',\n disabled: false,\n access_type: 'public',\n maxCount: 1,\n listType: 'picture',\n group: 'sys',\n span: 24,\n acceptList: ['.pdf'],\n name: 'files',\n placeholder: '请输入文件',\n pull: 0,\n push: 0,\n offset: 0,\n queryType: 'advanced',\n },\n ],\n },\n ],\n model: {\n update_field_list: ['name', 'match_type', 'content', 'files'],\n name: null,\n match_type: 'simple',\n files: [],\n },\n rules: {\n name: [\n {\n required: true,\n message: '请填输入标题',\n },\n ],\n },\n options: {\n match_type: [\n {\n name: '简单匹配',\n value: 'simple',\n valueType: 'str',\n },\n {\n name: '正则匹配',\n value: 'regex',\n valueType: 'str',\n },\n ],\n },\n };\n const updateFormModalConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: [],\n },\n dynamicFieldList: [\n {\n children: [\n {\n type: 'input',\n name: 'name',\n label: '标题',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写标题',\n span: 24,\n required_condition: null,\n },\n {\n type: 'radio',\n name: 'match_type',\n label: '匹配类型',\n disabled: false,\n allowClear: true,\n labelKey: 'name',\n valueKey: 'value',\n defaultValue: '',\n placeholder: '请选择匹配类型',\n span: 24,\n required_condition: null,\n },\n {\n type: 'remotecomplete',\n label: '路径匹配',\n disabled: false,\n allowClear: true,\n valueKey: 'menu_path',\n labelKeyType: 1,\n labelKey: 'name',\n labelKeyList: [],\n labelSpace: '-',\n mode: 'default',\n placeholder: '请输入路径匹配',\n show_search: true,\n datasourceType: 'remote',\n queryType: 'advanced',\n searchConditions: [\n [\n {\n searchType: 3,\n field_name: 'is_active',\n operator: 'eq',\n value: [true],\n format: 'choices',\n class_name: 'bool',\n },\n ],\n ],\n simpleSearchConditions: [\n {\n searchType: 3,\n field_name: 'is_active',\n value: true,\n },\n ],\n postUrl: '/permission/query_menu_list',\n name: 'content',\n span: 24,\n pull: 0,\n push: 0,\n offset: 0,\n },\n {\n type: 'upload',\n label: '文件上传',\n disabled: false,\n access_type: 'public',\n maxCount: 1,\n listType: 'picture',\n group: 'sys',\n span: 24,\n acceptList: ['.pdf'],\n name: 'files',\n placeholder: '请选择文件上传',\n pull: 0,\n push: 0,\n offset: 0,\n queryType: 'advanced',\n },\n ],\n },\n ],\n model: {\n update_field_list: ['name', 'match_type', 'content', 'files'],\n name: null,\n match_type: 'simple',\n files: [],\n },\n rules: {\n name: [\n {\n required: true,\n message: '请填输入标题',\n },\n ],\n },\n options: {\n match_type: [\n {\n name: '简单匹配',\n value: 'simple',\n valueType: 'str',\n },\n {\n name: '正则匹配',\n value: 'regex',\n valueType: 'str',\n },\n ],\n },\n };\n\n return {\n baseColumns,\n formModalConfig,\n updateFormModalConfig,\n };\n};\n","import { useRequest } from 'liyu-pc-base/init-plugin';\n\nexport async function query_person_detail_list(params?: {\n [key: string]: any;\n}): Promise<RoleResponse> {\n return useRequest().post('/sys/query_person_detail_list', params);\n}\n\nexport async function create_organization_by_role_template(params: Record<string, any>) {\n return useRequest().post('/org/create_organization_by_role_template', params);\n}\n\nexport async function removePerson(params: Record<string, any>) {\n return useRequest().post('/sys/delete_user', params);\n}\nexport async function recoverPerson(params: Record<string, any>) {\n return useRequest().post('/sys/recover_user', params);\n}\nexport async function resetPassword(params: Record<string, any>) {\n return useRequest().post('/sys/reset_password', params);\n}\nexport async function create_role_list_and_person(params: Record<string, any>) {\n return useRequest().post('/org/create_role_list_and_person', params);\n}\nexport async function query_role_id_list(params: Record<string, any>) {\n return useRequest().post('/org/query_role_id_list', params);\n}\nexport async function query_role_list(params: Record<string, any>) {\n return useRequest().post('/production_event/query_role_list', params);\n}\nexport async function create_shift_and_user(params: Record<string, any>) {\n return useRequest().post('/shift/create_shift_and_user', params);\n}\nexport async function check_shift_and_user(params: Record<string, any>) {\n return useRequest().post('/shift/check_shift_and_user', params);\n}\n\nexport async function addPerson(params: Record<string, any>) {\n return useRequest().post('/sys/create_user', params);\n // return request('/sys.create_user', {\n // method: 'POST',\n // data: {\n // ...params,\n // method: 'post',\n // },\n // });\n}\n\nexport async function updatePerson(params: Record<string, any>) {\n return useRequest().post('/sys/update_user', params);\n}\n\ninterface RuleItem {\n key: string | number;\n callNo: number;\n avatar: string;\n desc: string;\n disabled: false;\n href: string;\n name: string;\n owner: string;\n progress: number;\n status: number;\n updatedAt: string;\n createdAt: string;\n}\n\ninterface RoleResponse {\n current: number;\n data: RuleItem[];\n pageSize: string;\n success: boolean;\n total: number;\n}\n","import { reactive } from 'vue';\nimport { message } from 'ant-design-vue';\nimport modalBox from 'liyu-pc-base/components/form-modal/modal-tools';\nimport { create_organization_by_role_template } from 'liyu-pc-base/api/permission/user-manage';\nimport type { BtnListConfig, HeadBtnListConfig } from 'liyu-pc-base/api/typing';\nexport const btn_list: BtnListConfig = [];\nexport const config = {\n creatCol: [],\n updateCol: [],\n};\nexport const head_btn_list: HeadBtnListConfig = [\n {\n name: '添加账套',\n type: 'dropdown',\n is_show: true,\n clazz: 'primary',\n cb: () => {\n const editModal = reactive({\n visible: true,\n title: '新建账套',\n loading: false,\n form: {\n settings: {\n labelAlign: 'right',\n layout: 'horizontal',\n col: [],\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '账套名称',\n disabled: false,\n allowClear: true,\n inputType: 'number',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填组织名称',\n },\n\n {\n type: 'remoteselect',\n name: 'role_org_id',\n label: '权限模板',\n disabled: false,\n allowClear: true,\n labelKey: 'name',\n valueKey: 'id',\n placeholder: '请填权限模板',\n datasourceType: 'remote',\n mode: 'default',\n modalType: 'select-org-id',\n },\n ],\n rules: {\n name: [{ required: true, message: '请输入账套名称' }],\n role_org_id: [{ required: true, message: '请选择权限模板' }],\n },\n model: reactive({\n name: '',\n role_org_id: '',\n }),\n },\n options: {},\n ok: (payload: any) => {\n return new Promise(resolve => {\n editModal.loading = true;\n create_organization_by_role_template({\n ...payload,\n })\n .then(() => {\n message.success('创建新账套成功');\n resolve(null);\n })\n .finally(() => {\n editModal.loading = false;\n });\n });\n },\n });\n modalBox(editModal);\n },\n },\n];\n","import { TableColumn } from 'liyu-pc-base/typing';\nimport { Record, SearchConfig } from 'liyu-pc-base/components/remotePages/typing';\nimport { btn_list, config, head_btn_list } from './permission-organization-config';\nimport { event_obj } from 'liyu-pc-base/init-plugin';\nimport { reactive } from 'vue';\nimport { useUserStore } from 'liyu-pc-base/init-plugin';\n\nexport default () => {\n const userStore = useUserStore();\n const current_org = userStore.currentOrg; // 当前组织org\n\n const search_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'inline',\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写账套名称',\n },\n ],\n rules: {},\n model: reactive({\n org_id: current_org.id,\n aim_org_id: current_org.id,\n is_active: true,\n name: '',\n get_role: true,\n }),\n options: {},\n };\n\n const edit_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'horizontal',\n col: config.creatCol,\n },\n fields: [\n {\n type: 'remoteselect',\n name: 'aim_org_id',\n label: '隶属组织',\n disabled: false,\n allowClear: true,\n labelKey: 'name',\n valueKey: 'id',\n placeholder: '请选择隶属组织',\n datasourceType: 'remote',\n mode: 'default',\n default: true,\n modalType: 'select-org-id',\n },\n {\n type: 'input',\n name: 'username',\n label: '手机号',\n disabled: false,\n allowClear: true,\n inputType: 'number',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填手机号',\n },\n {\n type: 'input',\n name: 'realname',\n label: '姓名',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填姓名',\n },\n {\n type: 'select',\n name: 'manage_type',\n label: '用户类型',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填姓名',\n },\n {\n type: 'remoteselect',\n name: 'role_ids',\n label: '角色',\n disabled: false,\n placeholder: '请选择角色',\n datasourceType: 'remote',\n mode: 'multiple',\n allowClear: true,\n modalType: 'liyu_permission-role',\n },\n ],\n rules: {\n username: [{ required: true, pattern: /^1[123456789]\\d{9}$/, message: '请输入正确手机号' }],\n realname: [{ required: true, message: '请输入姓名' }],\n },\n model: {\n org_id: current_org?.id,\n id: null,\n username: '',\n realname: '',\n aim_org_id: current_org?.id,\n },\n options: {\n manage_type: [\n { label: '普通用户', value: 0 },\n { label: '超级管理员', value: 2 },\n ],\n },\n };\n\n const update_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'horizontal',\n col: config.creatCol,\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '账套名称',\n disabled: false,\n allowClear: true,\n inputType: 'number',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填组织名称',\n },\n ],\n rules: {},\n model: reactive({\n org_id: current_org.id,\n id: null,\n username: '',\n realname: '',\n title: '',\n aim_org_id: '',\n email: '',\n }),\n options: {},\n };\n\n const titleList = {\n title: '账套管理',\n addModalTitle: '新建账套',\n updateTitle: '修改',\n is_create: false, // 是否有【新建】按钮\n is_update: true, // 是否有【修改】按钮\n is_remove: false, // 是否有【删除】按钮\n is_recover: false, // 是否有【恢复】按钮\n };\n\n const api_fields: Record = {\n update: {\n aim_org_id: 'id',\n },\n delete: {\n person_id: 'id',\n },\n recover: {\n person_id: 'id',\n },\n updateData: {\n org_id: 'org_id',\n aim_org_id: 'id',\n },\n };\n\n const baseColumns: TableColumn[] = [\n {\n title: '序号',\n width: 50,\n dataIndex: 'index',\n checked: true,\n fixed: 'left',\n },\n {\n title: '名称',\n dataIndex: 'name',\n checked: true,\n fixed: 'left',\n },\n\n {\n title: '是否可用',\n width: 100,\n dataIndex: 'is_active',\n checked: true,\n resizable: true,\n cellComponent: 'boolean',\n name1: '可用',\n name2: '禁用',\n filterMultiple: false,\n filters: [\n { text: '全部', value: '' },\n { text: '可用', value: 'true' },\n { text: '禁用', value: 'false' },\n ],\n },\n {\n title: '操作',\n width: 50,\n checked: true,\n dataIndex: 'action',\n cellComponent: 'action',\n fixed: 'right',\n },\n ];\n\n return {\n searchConfig: search_config,\n formModalConfig: edit_model_config,\n updateFormModalConfig: update_model_config,\n queryData: '/org/query_organization_list',\n addData: '/org/create_organization',\n updateData: '/org/update_organization',\n getData: '/org/get_organization',\n removeData: null,\n recoverData: null,\n baseColumns: baseColumns,\n titleList: titleList,\n api_fields: api_fields,\n btn_list: btn_list,\n head_btn_list: head_btn_list,\n event_obj: event_obj(),\n base_search_condition_config_list: [],\n default_search_condition_config_list: [[]],\n condition_group_config_list: [],\n is_show_advantage: false,\n is_show_normal_search: true,\n is_only_show_advantage: false,\n is_only_show_normal_search: true,\n queryConditionGroupData: null,\n isView: false,\n };\n};\n","// This icon file is generated automatically.\nvar CloseOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M563.8 512l262.5-312.9c4.4-5.2.7-13.1-6.1-13.1h-79.8c-4.7 0-9.2 2.1-12.3 5.7L511.6 449.8 295.1 191.7c-3-3.6-7.5-5.7-12.3-5.7H203c-6.8 0-10.5 7.9-6.1 13.1L459.4 512 196.9 824.9A7.95 7.95 0 00203 838h79.8c4.7 0 9.2-2.1 12.3-5.7l216.5-258.1 216.5 258.1c3 3.6 7.5 5.7 12.3 5.7h79.8c6.8 0 10.5-7.9 6.1-13.1L563.8 512z\" } }] }, \"name\": \"close\", \"theme\": \"outlined\" };\nexport default CloseOutlined;\n","import { createVNode as _createVNode } from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport CloseOutlinedSvg from \"@ant-design/icons-svg/es/asn/CloseOutlined\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar CloseOutlined = function CloseOutlined(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _createVNode(AntdIcon, _objectSpread({}, p, {\n \"icon\": CloseOutlinedSvg\n }), null);\n};\n\nCloseOutlined.displayName = 'CloseOutlined';\nCloseOutlined.inheritAttrs = false;\nexport default CloseOutlined;","// This icon file is generated automatically.\nvar CheckCircleOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M699 353h-46.9c-10.2 0-19.9 4.9-25.9 13.3L469 584.3l-71.2-98.8c-6-8.3-15.6-13.3-25.9-13.3H325c-6.5 0-10.3 7.4-6.5 12.7l124.6 172.8a31.8 31.8 0 0051.7 0l210.6-292c3.9-5.3.1-12.7-6.4-12.7z\" } }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\" } }] }, \"name\": \"check-circle\", \"theme\": \"outlined\" };\nexport default CheckCircleOutlined;\n","import { createVNode as _createVNode } from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport CheckCircleOutlinedSvg from \"@ant-design/icons-svg/es/asn/CheckCircleOutlined\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar CheckCircleOutlined = function CheckCircleOutlined(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _createVNode(AntdIcon, _objectSpread({}, p, {\n \"icon\": CheckCircleOutlinedSvg\n }), null);\n};\n\nCheckCircleOutlined.displayName = 'CheckCircleOutlined';\nCheckCircleOutlined.inheritAttrs = false;\nexport default CheckCircleOutlined;","// This icon file is generated automatically.\nvar ExclamationCircleOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\" } }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M464 688a48 48 0 1096 0 48 48 0 10-96 0zm24-112h48c4.4 0 8-3.6 8-8V296c0-4.4-3.6-8-8-8h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8z\" } }] }, \"name\": \"exclamation-circle\", \"theme\": \"outlined\" };\nexport default ExclamationCircleOutlined;\n","import { createVNode as _createVNode } from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport ExclamationCircleOutlinedSvg from \"@ant-design/icons-svg/es/asn/ExclamationCircleOutlined\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar ExclamationCircleOutlined = function ExclamationCircleOutlined(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _createVNode(AntdIcon, _objectSpread({}, p, {\n \"icon\": ExclamationCircleOutlinedSvg\n }), null);\n};\n\nExclamationCircleOutlined.displayName = 'ExclamationCircleOutlined';\nExclamationCircleOutlined.inheritAttrs = false;\nexport default ExclamationCircleOutlined;","// This icon file is generated automatically.\nvar InfoCircleOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\" } }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M464 336a48 48 0 1096 0 48 48 0 10-96 0zm72 112h-48c-4.4 0-8 3.6-8 8v272c0 4.4 3.6 8 8 8h48c4.4 0 8-3.6 8-8V456c0-4.4-3.6-8-8-8z\" } }] }, \"name\": \"info-circle\", \"theme\": \"outlined\" };\nexport default InfoCircleOutlined;\n","import { createVNode as _createVNode } from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport InfoCircleOutlinedSvg from \"@ant-design/icons-svg/es/asn/InfoCircleOutlined\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar InfoCircleOutlined = function InfoCircleOutlined(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _createVNode(AntdIcon, _objectSpread({}, p, {\n \"icon\": InfoCircleOutlinedSvg\n }), null);\n};\n\nInfoCircleOutlined.displayName = 'InfoCircleOutlined';\nInfoCircleOutlined.inheritAttrs = false;\nexport default InfoCircleOutlined;","// This icon file is generated automatically.\nvar CloseCircleOutlined = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M685.4 354.8c0-4.4-3.6-8-8-8l-66 .3L512 465.6l-99.3-118.4-66.1-.3c-4.4 0-8 3.5-8 8 0 1.9.7 3.7 1.9 5.2l130.1 155L340.5 670a8.32 8.32 0 00-1.9 5.2c0 4.4 3.6 8 8 8l66.1-.3L512 564.4l99.3 118.4 66 .3c4.4 0 8-3.5 8-8 0-1.9-.7-3.7-1.9-5.2L553.5 515l130.1-155c1.2-1.4 1.8-3.3 1.8-5.2z\" } }, { \"tag\": \"path\", \"attrs\": { \"d\": \"M512 65C264.6 65 64 265.6 64 513s200.6 448 448 448 448-200.6 448-448S759.4 65 512 65zm0 820c-205.4 0-372-166.6-372-372s166.6-372 372-372 372 166.6 372 372-166.6 372-372 372z\" } }] }, \"name\": \"close-circle\", \"theme\": \"outlined\" };\nexport default CloseCircleOutlined;\n","import { createVNode as _createVNode } from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport CloseCircleOutlinedSvg from \"@ant-design/icons-svg/es/asn/CloseCircleOutlined\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar CloseCircleOutlined = function CloseCircleOutlined(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _createVNode(AntdIcon, _objectSpread({}, p, {\n \"icon\": CloseCircleOutlinedSvg\n }), null);\n};\n\nCloseCircleOutlined.displayName = 'CloseCircleOutlined';\nCloseCircleOutlined.inheritAttrs = false;\nexport default CloseCircleOutlined;","// This icon file is generated automatically.\nvar InfoCircleFilled = { \"icon\": { \"tag\": \"svg\", \"attrs\": { \"viewBox\": \"64 64 896 896\", \"focusable\": \"false\" }, \"children\": [{ \"tag\": \"path\", \"attrs\": { \"d\": \"M512 64C264.6 64 64 264.6 64 512s200.6 448 448 448 448-200.6 448-448S759.4 64 512 64zm32 664c0 4.4-3.6 8-8 8h-48c-4.4 0-8-3.6-8-8V456c0-4.4 3.6-8 8-8h48c4.4 0 8 3.6 8 8v272zm-32-344a48.01 48.01 0 010-96 48.01 48.01 0 010 96z\" } }] }, \"name\": \"info-circle\", \"theme\": \"filled\" };\nexport default InfoCircleFilled;\n","import { createVNode as _createVNode } from \"vue\";\n\nfunction _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? Object(arguments[i]) : {}; var ownKeys = Object.keys(source); if (typeof Object.getOwnPropertySymbols === 'function') { ownKeys = ownKeys.concat(Object.getOwnPropertySymbols(source).filter(function (sym) { return Object.getOwnPropertyDescriptor(source, sym).enumerable; })); } ownKeys.forEach(function (key) { _defineProperty(target, key, source[key]); }); } return target; }\n\nfunction _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }\n\n// GENERATE BY ./scripts/generate.ts\n// DON NOT EDIT IT MANUALLY\nimport InfoCircleFilledSvg from \"@ant-design/icons-svg/es/asn/InfoCircleFilled\";\nimport AntdIcon from '../components/AntdIcon';\n\nvar InfoCircleFilled = function InfoCircleFilled(props, context) {\n var p = _objectSpread({}, props, context.attrs);\n\n return _createVNode(AntdIcon, _objectSpread({}, p, {\n \"icon\": InfoCircleFilledSvg\n }), null);\n};\n\nInfoCircleFilled.displayName = 'InfoCircleFilled';\nInfoCircleFilled.inheritAttrs = false;\nexport default InfoCircleFilled;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport defaultLocale from '../locale/en_US';\nlet runtimeLocale = _extends({}, defaultLocale.Modal);\nexport function changeConfirmLocale(newLocale) {\n if (newLocale) {\n runtimeLocale = _extends(_extends({}, runtimeLocale), newLocale);\n } else {\n runtimeLocale = _extends({}, defaultLocale.Modal);\n }\n}\nexport function getConfirmLocale() {\n return runtimeLocale;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { provide, defineComponent, reactive, watch } from 'vue';\nimport { changeConfirmLocale } from '../modal/locale';\nimport warning from '../_util/warning';\nimport { withInstall } from '../_util/type';\nexport const ANT_MARK = 'internalMark';\nconst LocaleProvider = defineComponent({\n compatConfig: {\n MODE: 3\n },\n name: 'ALocaleProvider',\n props: {\n locale: {\n type: Object\n },\n ANT_MARK__: String\n },\n setup(props, _ref) {\n let {\n slots\n } = _ref;\n warning(props.ANT_MARK__ === ANT_MARK, 'LocaleProvider', '`LocaleProvider` is deprecated. Please use `locale` with `ConfigProvider` instead');\n const state = reactive({\n antLocale: _extends(_extends({}, props.locale), {\n exist: true\n }),\n ANT_MARK__: ANT_MARK\n });\n provide('localeData', state);\n watch(() => props.locale, locale => {\n changeConfirmLocale(locale && locale.Modal);\n state.antLocale = _extends(_extends({}, locale), {\n exist: true\n });\n }, {\n immediate: true\n });\n return () => {\n var _a;\n return (_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots);\n };\n }\n});\n/* istanbul ignore next */\nLocaleProvider.install = function (app) {\n app.component(LocaleProvider.name, LocaleProvider);\n return app;\n};\nexport default withInstall(LocaleProvider);","import locale from '../locale';\nexport * from '../locale';\nexport default locale;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport { resolveDirective as _resolveDirective, createVNode as _createVNode } from \"vue\";\nimport { Teleport, computed, defineComponent, onMounted, watch, onUnmounted } from 'vue';\nimport classNames from '../_util/classNames';\nexport default defineComponent({\n name: 'Notice',\n inheritAttrs: false,\n props: ['prefixCls', 'duration', 'updateMark', 'noticeKey', 'closeIcon', 'closable', 'props', 'onClick', 'onClose', 'holder', 'visible'],\n setup(props, _ref) {\n let {\n attrs,\n slots\n } = _ref;\n let closeTimer;\n let isUnMounted = false;\n const duration = computed(() => props.duration === undefined ? 4.5 : props.duration);\n const startCloseTimer = () => {\n if (duration.value && !isUnMounted) {\n closeTimer = setTimeout(() => {\n close();\n }, duration.value * 1000);\n }\n };\n const clearCloseTimer = () => {\n if (closeTimer) {\n clearTimeout(closeTimer);\n closeTimer = null;\n }\n };\n const close = e => {\n if (e) {\n e.stopPropagation();\n }\n clearCloseTimer();\n const {\n onClose,\n noticeKey\n } = props;\n if (onClose) {\n onClose(noticeKey);\n }\n };\n const restartCloseTimer = () => {\n clearCloseTimer();\n startCloseTimer();\n };\n onMounted(() => {\n startCloseTimer();\n });\n onUnmounted(() => {\n isUnMounted = true;\n clearCloseTimer();\n });\n watch([duration, () => props.updateMark, () => props.visible], (_ref2, _ref3) => {\n let [preDuration, preUpdateMark, preVisible] = _ref2;\n let [newDuration, newUpdateMark, newVisible] = _ref3;\n if (preDuration !== newDuration || preUpdateMark !== newUpdateMark || preVisible !== newVisible && newVisible) {\n restartCloseTimer();\n }\n }, {\n flush: 'post'\n });\n return () => {\n var _a, _b;\n const {\n prefixCls,\n closable,\n closeIcon = (_a = slots.closeIcon) === null || _a === void 0 ? void 0 : _a.call(slots),\n onClick,\n holder\n } = props;\n const {\n class: className,\n style\n } = attrs;\n const componentClass = `${prefixCls}-notice`;\n const dataOrAriaAttributeProps = Object.keys(attrs).reduce((acc, key) => {\n if (key.startsWith('data-') || key.startsWith('aria-') || key === 'role') {\n acc[key] = attrs[key];\n }\n return acc;\n }, {});\n const node = _createVNode(\"div\", _objectSpread({\n \"class\": classNames(componentClass, className, {\n [`${componentClass}-closable`]: closable\n }),\n \"style\": style,\n \"onMouseenter\": clearCloseTimer,\n \"onMouseleave\": startCloseTimer,\n \"onClick\": onClick\n }, dataOrAriaAttributeProps), [_createVNode(\"div\", {\n \"class\": `${componentClass}-content`\n }, [(_b = slots.default) === null || _b === void 0 ? void 0 : _b.call(slots)]), closable ? _createVNode(\"a\", {\n \"tabindex\": 0,\n \"onClick\": close,\n \"class\": `${componentClass}-close`\n }, [closeIcon || _createVNode(\"span\", {\n \"class\": `${componentClass}-close-x`\n }, null)]) : null]);\n if (holder) {\n return _createVNode(Teleport, {\n \"to\": holder\n }, {\n default: () => node\n });\n }\n return node;\n };\n }\n});","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { createVNode as _createVNode } from \"vue\";\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { getTransitionGroupProps } from '../_util/transition';\nimport { toRaw, shallowRef, createVNode, computed, defineComponent, ref, TransitionGroup, onMounted, render as vueRender } from 'vue';\nimport Notice from './Notice';\nimport ConfigProvider, { globalConfigForApi } from '../config-provider';\nimport classNames from '../_util/classNames';\nlet seed = 0;\nconst now = Date.now();\nfunction getUuid() {\n const id = seed;\n seed += 1;\n return `rcNotification_${now}_${id}`;\n}\nconst Notification = defineComponent({\n name: 'Notification',\n inheritAttrs: false,\n props: ['prefixCls', 'transitionName', 'animation', 'maxCount', 'closeIcon', 'hashId'],\n setup(props, _ref) {\n let {\n attrs,\n expose,\n slots\n } = _ref;\n const hookRefs = new Map();\n const notices = ref([]);\n const transitionProps = computed(() => {\n const {\n prefixCls,\n animation = 'fade'\n } = props;\n let name = props.transitionName;\n if (!name && animation) {\n name = `${prefixCls}-${animation}`;\n }\n return getTransitionGroupProps(name);\n });\n const add = (originNotice, holderCallback) => {\n const key = originNotice.key || getUuid();\n const notice = _extends(_extends({}, originNotice), {\n key\n });\n const {\n maxCount\n } = props;\n const noticeIndex = notices.value.map(v => v.notice.key).indexOf(key);\n const updatedNotices = notices.value.concat();\n if (noticeIndex !== -1) {\n updatedNotices.splice(noticeIndex, 1, {\n notice,\n holderCallback\n });\n } else {\n if (maxCount && notices.value.length >= maxCount) {\n // XXX, use key of first item to update new added (let React to move exsiting\n // instead of remove and mount). Same key was used before for both a) external\n // manual control and b) internal react 'key' prop , which is not that good.\n // eslint-disable-next-line no-param-reassign\n // zombieJ: Not know why use `updateKey`. This makes Notice infinite loop in jest.\n // Change to `updateMark` for compare instead.\n // https://github.com/react-component/notification/commit/32299e6be396f94040bfa82517eea940db947ece\n notice.key = updatedNotices[0].notice.key;\n notice.updateMark = getUuid();\n // zombieJ: That's why. User may close by key directly.\n // We need record this but not re-render to avoid upper issue\n // https://github.com/react-component/notification/issues/129\n notice.userPassKey = key;\n updatedNotices.shift();\n }\n updatedNotices.push({\n notice,\n holderCallback\n });\n }\n notices.value = updatedNotices;\n };\n const remove = removeKey => {\n notices.value = toRaw(notices.value).filter(_ref2 => {\n let {\n notice: {\n key,\n userPassKey\n }\n } = _ref2;\n const mergedKey = userPassKey || key;\n return mergedKey !== removeKey;\n });\n };\n expose({\n add,\n remove,\n notices\n });\n return () => {\n var _a;\n const {\n prefixCls,\n closeIcon = (_a = slots.closeIcon) === null || _a === void 0 ? void 0 : _a.call(slots, {\n prefixCls\n })\n } = props;\n const noticeNodes = notices.value.map((_ref3, index) => {\n let {\n notice,\n holderCallback\n } = _ref3;\n const updateMark = index === notices.value.length - 1 ? notice.updateMark : undefined;\n const {\n key,\n userPassKey\n } = notice;\n const {\n content\n } = notice;\n const noticeProps = _extends(_extends(_extends({\n prefixCls,\n closeIcon: typeof closeIcon === 'function' ? closeIcon({\n prefixCls\n }) : closeIcon\n }, notice), notice.props), {\n key,\n noticeKey: userPassKey || key,\n updateMark,\n onClose: noticeKey => {\n var _a;\n remove(noticeKey);\n (_a = notice.onClose) === null || _a === void 0 ? void 0 : _a.call(notice);\n },\n onClick: notice.onClick\n });\n if (holderCallback) {\n return _createVNode(\"div\", {\n \"key\": key,\n \"class\": `${prefixCls}-hook-holder`,\n \"ref\": div => {\n if (typeof key === 'undefined') {\n return;\n }\n if (div) {\n hookRefs.set(key, div);\n holderCallback(div, noticeProps);\n } else {\n hookRefs.delete(key);\n }\n }\n }, null);\n }\n return _createVNode(Notice, _objectSpread(_objectSpread({}, noticeProps), {}, {\n \"class\": classNames(noticeProps.class, props.hashId)\n }), {\n default: () => [typeof content === 'function' ? content({\n prefixCls\n }) : content]\n });\n });\n const className = {\n [prefixCls]: 1,\n [attrs.class]: !!attrs.class,\n [props.hashId]: true\n };\n return _createVNode(\"div\", {\n \"class\": className,\n \"style\": attrs.style || {\n top: '65px',\n left: '50%'\n }\n }, [_createVNode(TransitionGroup, _objectSpread({\n \"tag\": \"div\"\n }, transitionProps.value), {\n default: () => [noticeNodes]\n })]);\n };\n }\n});\nNotification.newInstance = function newNotificationInstance(properties, callback) {\n const _a = properties || {},\n {\n name = 'notification',\n getContainer,\n appContext,\n prefixCls: customizePrefixCls,\n rootPrefixCls: customRootPrefixCls,\n transitionName: customTransitionName,\n hasTransitionName,\n useStyle\n } = _a,\n props = __rest(_a, [\"name\", \"getContainer\", \"appContext\", \"prefixCls\", \"rootPrefixCls\", \"transitionName\", \"hasTransitionName\", \"useStyle\"]);\n const div = document.createElement('div');\n if (getContainer) {\n const root = getContainer();\n root.appendChild(div);\n } else {\n document.body.appendChild(div);\n }\n const Wrapper = defineComponent({\n compatConfig: {\n MODE: 3\n },\n name: 'NotificationWrapper',\n setup(_props, _ref4) {\n let {\n attrs\n } = _ref4;\n const notiRef = shallowRef();\n const prefixCls = computed(() => globalConfigForApi.getPrefixCls(name, customizePrefixCls));\n const [, hashId] = useStyle(prefixCls);\n onMounted(() => {\n callback({\n notice(noticeProps) {\n var _a;\n (_a = notiRef.value) === null || _a === void 0 ? void 0 : _a.add(noticeProps);\n },\n removeNotice(key) {\n var _a;\n (_a = notiRef.value) === null || _a === void 0 ? void 0 : _a.remove(key);\n },\n destroy() {\n vueRender(null, div);\n if (div.parentNode) {\n div.parentNode.removeChild(div);\n }\n },\n component: notiRef\n });\n });\n return () => {\n const global = globalConfigForApi;\n const rootPrefixCls = global.getRootPrefixCls(customRootPrefixCls, prefixCls.value);\n const transitionName = hasTransitionName ? customTransitionName : `${prefixCls.value}-${customTransitionName}`;\n return _createVNode(ConfigProvider, _objectSpread(_objectSpread({}, global), {}, {\n \"prefixCls\": rootPrefixCls\n }), {\n default: () => [_createVNode(Notification, _objectSpread(_objectSpread({\n \"ref\": notiRef\n }, attrs), {}, {\n \"prefixCls\": prefixCls.value,\n \"transitionName\": transitionName,\n \"hashId\": hashId.value\n }), null)]\n });\n };\n }\n });\n const vm = createVNode(Wrapper, props);\n vm.appContext = appContext || vm.appContext;\n vueRender(vm, div);\n};\nexport default Notification;","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { createVNode as _createVNode } from \"vue\";\nimport { watch, computed, defineComponent, ref, TransitionGroup } from 'vue';\nimport Notice from './Notice';\nimport { getTransitionGroupProps } from '../_util/transition';\nimport classNames from '../_util/classNames';\nimport Portal from '../_util/Portal';\nlet seed = 0;\nconst now = Date.now();\nexport function getUuid() {\n const id = seed;\n seed += 1;\n return `rcNotification_${now}_${id}`;\n}\nconst Notification = defineComponent({\n name: 'HookNotification',\n inheritAttrs: false,\n props: ['prefixCls', 'transitionName', 'animation', 'maxCount', 'closeIcon', 'hashId', 'remove', 'notices', 'getStyles', 'getClassName', 'onAllRemoved', 'getContainer'],\n setup(props, _ref) {\n let {\n attrs,\n slots\n } = _ref;\n const hookRefs = new Map();\n const notices = computed(() => props.notices);\n const transitionProps = computed(() => {\n let name = props.transitionName;\n if (!name && props.animation) {\n switch (typeof props.animation) {\n case 'string':\n name = props.animation;\n break;\n case 'function':\n name = props.animation().name;\n break;\n case 'object':\n name = props.animation.name;\n break;\n default:\n name = `${props.prefixCls}-fade`;\n break;\n }\n }\n return getTransitionGroupProps(name);\n });\n const remove = key => props.remove(key);\n const placements = ref({});\n watch(notices, () => {\n const nextPlacements = {};\n // init placements with animation\n Object.keys(placements.value).forEach(placement => {\n nextPlacements[placement] = [];\n });\n props.notices.forEach(config => {\n const {\n placement = 'topRight'\n } = config.notice;\n if (placement) {\n nextPlacements[placement] = nextPlacements[placement] || [];\n nextPlacements[placement].push(config);\n }\n });\n placements.value = nextPlacements;\n });\n const placementList = computed(() => Object.keys(placements.value));\n return () => {\n var _a;\n const {\n prefixCls,\n closeIcon = (_a = slots.closeIcon) === null || _a === void 0 ? void 0 : _a.call(slots, {\n prefixCls\n })\n } = props;\n const noticeNodes = placementList.value.map(placement => {\n var _a, _b;\n const noticesForPlacement = placements.value[placement];\n const classes = (_a = props.getClassName) === null || _a === void 0 ? void 0 : _a.call(props, placement);\n const styles = (_b = props.getStyles) === null || _b === void 0 ? void 0 : _b.call(props, placement);\n const noticeNodesForPlacement = noticesForPlacement.map((_ref2, index) => {\n let {\n notice,\n holderCallback\n } = _ref2;\n const updateMark = index === notices.value.length - 1 ? notice.updateMark : undefined;\n const {\n key,\n userPassKey\n } = notice;\n const {\n content\n } = notice;\n const noticeProps = _extends(_extends(_extends({\n prefixCls,\n closeIcon: typeof closeIcon === 'function' ? closeIcon({\n prefixCls\n }) : closeIcon\n }, notice), notice.props), {\n key,\n noticeKey: userPassKey || key,\n updateMark,\n onClose: noticeKey => {\n var _a;\n remove(noticeKey);\n (_a = notice.onClose) === null || _a === void 0 ? void 0 : _a.call(notice);\n },\n onClick: notice.onClick\n });\n if (holderCallback) {\n return _createVNode(\"div\", {\n \"key\": key,\n \"class\": `${prefixCls}-hook-holder`,\n \"ref\": div => {\n if (typeof key === 'undefined') {\n return;\n }\n if (div) {\n hookRefs.set(key, div);\n holderCallback(div, noticeProps);\n } else {\n hookRefs.delete(key);\n }\n }\n }, null);\n }\n return _createVNode(Notice, _objectSpread(_objectSpread({}, noticeProps), {}, {\n \"class\": classNames(noticeProps.class, props.hashId)\n }), {\n default: () => [typeof content === 'function' ? content({\n prefixCls\n }) : content]\n });\n });\n const className = {\n [prefixCls]: 1,\n [`${prefixCls}-${placement}`]: 1,\n [attrs.class]: !!attrs.class,\n [props.hashId]: true,\n [classes]: !!classes\n };\n function onAfterLeave() {\n var _a;\n if (noticesForPlacement.length > 0) {\n return;\n }\n Reflect.deleteProperty(placements.value, placement);\n (_a = props.onAllRemoved) === null || _a === void 0 ? void 0 : _a.call(props);\n }\n return _createVNode(\"div\", {\n \"key\": placement,\n \"class\": className,\n \"style\": attrs.style || styles || {\n top: '65px',\n left: '50%'\n }\n }, [_createVNode(TransitionGroup, _objectSpread(_objectSpread({\n \"tag\": \"div\"\n }, transitionProps.value), {}, {\n \"onAfterLeave\": onAfterLeave\n }), {\n default: () => [noticeNodesForPlacement]\n })]);\n });\n return _createVNode(Portal, {\n \"getContainer\": props.getContainer\n }, {\n default: () => [noticeNodes]\n });\n };\n }\n});\nexport default Notification;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { createVNode as _createVNode } from \"vue\";\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { shallowRef, watch } from 'vue';\nimport HookNotification, { getUuid } from './HookNotification';\nconst defaultGetContainer = () => document.body;\nlet uniqueKey = 0;\nfunction mergeConfig() {\n const clone = {};\n for (var _len = arguments.length, objList = new Array(_len), _key = 0; _key < _len; _key++) {\n objList[_key] = arguments[_key];\n }\n objList.forEach(obj => {\n if (obj) {\n Object.keys(obj).forEach(key => {\n const val = obj[key];\n if (val !== undefined) {\n clone[key] = val;\n }\n });\n }\n });\n return clone;\n}\nexport default function useNotification() {\n let rootConfig = arguments.length > 0 && arguments[0] !== undefined ? arguments[0] : {};\n const {\n getContainer = defaultGetContainer,\n motion,\n prefixCls,\n maxCount,\n getClassName,\n getStyles,\n onAllRemoved\n } = rootConfig,\n shareConfig = __rest(rootConfig, [\"getContainer\", \"motion\", \"prefixCls\", \"maxCount\", \"getClassName\", \"getStyles\", \"onAllRemoved\"]);\n const notices = shallowRef([]);\n const notificationsRef = shallowRef();\n const add = (originNotice, holderCallback) => {\n const key = originNotice.key || getUuid();\n const notice = _extends(_extends({}, originNotice), {\n key\n });\n const noticeIndex = notices.value.map(v => v.notice.key).indexOf(key);\n const updatedNotices = notices.value.concat();\n if (noticeIndex !== -1) {\n updatedNotices.splice(noticeIndex, 1, {\n notice,\n holderCallback\n });\n } else {\n if (maxCount && notices.value.length >= maxCount) {\n notice.key = updatedNotices[0].notice.key;\n notice.updateMark = getUuid();\n notice.userPassKey = key;\n updatedNotices.shift();\n }\n updatedNotices.push({\n notice,\n holderCallback\n });\n }\n notices.value = updatedNotices;\n };\n const removeNotice = removeKey => {\n notices.value = notices.value.filter(_ref => {\n let {\n notice: {\n key,\n userPassKey\n }\n } = _ref;\n const mergedKey = userPassKey || key;\n return mergedKey !== removeKey;\n });\n };\n const destroy = () => {\n notices.value = [];\n };\n const contextHolder = () => _createVNode(HookNotification, {\n \"ref\": notificationsRef,\n \"prefixCls\": prefixCls,\n \"maxCount\": maxCount,\n \"notices\": notices.value,\n \"remove\": removeNotice,\n \"getClassName\": getClassName,\n \"getStyles\": getStyles,\n \"animation\": motion,\n \"hashId\": rootConfig.hashId,\n \"onAllRemoved\": onAllRemoved,\n \"getContainer\": getContainer\n }, null);\n const taskQueue = shallowRef([]);\n // ========================= Refs =========================\n const api = {\n open: config => {\n const mergedConfig = mergeConfig(shareConfig, config);\n //@ts-ignore\n if (mergedConfig.key === null || mergedConfig.key === undefined) {\n //@ts-ignore\n mergedConfig.key = `vc-notification-${uniqueKey}`;\n uniqueKey += 1;\n }\n taskQueue.value = [...taskQueue.value, {\n type: 'open',\n config: mergedConfig\n }];\n },\n close: key => {\n taskQueue.value = [...taskQueue.value, {\n type: 'close',\n key\n }];\n },\n destroy: () => {\n taskQueue.value = [...taskQueue.value, {\n type: 'destroy'\n }];\n }\n };\n // ======================== Effect ========================\n watch(taskQueue, () => {\n // Flush task when node ready\n if (taskQueue.value.length) {\n taskQueue.value.forEach(task => {\n switch (task.type) {\n case 'open':\n // @ts-ignore\n add(task.config);\n break;\n case 'close':\n removeNotice(task.key);\n break;\n case 'destroy':\n destroy();\n break;\n }\n });\n taskQueue.value = [];\n }\n });\n // ======================== Return ========================\n return [api, contextHolder];\n}","import Notification from './Notification';\nimport useNotification from './useNotification';\nexport { useNotification };\nexport default Notification;","import _extends from \"@babel/runtime/helpers/esm/extends\";\n// deps-lint-skip-all\nimport { Keyframes } from '../../_util/cssinjs';\nimport { genComponentStyleHook, mergeToken } from '../../theme/internal';\nimport { resetComponent } from '../../style';\nconst genMessageStyle = token => {\n const {\n componentCls,\n iconCls,\n boxShadowSecondary,\n colorBgElevated,\n colorSuccess,\n colorError,\n colorWarning,\n colorInfo,\n fontSizeLG,\n motionEaseInOutCirc,\n motionDurationSlow,\n marginXS,\n paddingXS,\n borderRadiusLG,\n zIndexPopup,\n // Custom token\n messageNoticeContentPadding\n } = token;\n const messageMoveIn = new Keyframes('MessageMoveIn', {\n '0%': {\n padding: 0,\n transform: 'translateY(-100%)',\n opacity: 0\n },\n '100%': {\n padding: paddingXS,\n transform: 'translateY(0)',\n opacity: 1\n }\n });\n const messageMoveOut = new Keyframes('MessageMoveOut', {\n '0%': {\n maxHeight: token.height,\n padding: paddingXS,\n opacity: 1\n },\n '100%': {\n maxHeight: 0,\n padding: 0,\n opacity: 0\n }\n });\n return [\n // ============================ Holder ============================\n {\n [componentCls]: _extends(_extends({}, resetComponent(token)), {\n position: 'fixed',\n top: marginXS,\n left: '50%',\n transform: 'translateX(-50%)',\n width: '100%',\n pointerEvents: 'none',\n zIndex: zIndexPopup,\n [`${componentCls}-move-up`]: {\n animationFillMode: 'forwards'\n },\n [`\n ${componentCls}-move-up-appear,\n ${componentCls}-move-up-enter\n `]: {\n animationName: messageMoveIn,\n animationDuration: motionDurationSlow,\n animationPlayState: 'paused',\n animationTimingFunction: motionEaseInOutCirc\n },\n [`\n ${componentCls}-move-up-appear${componentCls}-move-up-appear-active,\n ${componentCls}-move-up-enter${componentCls}-move-up-enter-active\n `]: {\n animationPlayState: 'running'\n },\n [`${componentCls}-move-up-leave`]: {\n animationName: messageMoveOut,\n animationDuration: motionDurationSlow,\n animationPlayState: 'paused',\n animationTimingFunction: motionEaseInOutCirc\n },\n [`${componentCls}-move-up-leave${componentCls}-move-up-leave-active`]: {\n animationPlayState: 'running'\n },\n '&-rtl': {\n direction: 'rtl',\n span: {\n direction: 'rtl'\n }\n }\n })\n },\n // ============================ Notice ============================\n {\n [`${componentCls}-notice`]: {\n padding: paddingXS,\n textAlign: 'center',\n [iconCls]: {\n verticalAlign: 'text-bottom',\n marginInlineEnd: marginXS,\n fontSize: fontSizeLG\n },\n [`${componentCls}-notice-content`]: {\n display: 'inline-block',\n padding: messageNoticeContentPadding,\n background: colorBgElevated,\n borderRadius: borderRadiusLG,\n boxShadow: boxShadowSecondary,\n pointerEvents: 'all'\n },\n [`${componentCls}-success ${iconCls}`]: {\n color: colorSuccess\n },\n [`${componentCls}-error ${iconCls}`]: {\n color: colorError\n },\n [`${componentCls}-warning ${iconCls}`]: {\n color: colorWarning\n },\n [`\n ${componentCls}-info ${iconCls},\n ${componentCls}-loading ${iconCls}`]: {\n color: colorInfo\n }\n }\n },\n // ============================= Pure =============================\n {\n [`${componentCls}-notice-pure-panel`]: {\n padding: 0,\n textAlign: 'start'\n }\n }];\n};\n// ============================== Export ==============================\nexport default genComponentStyleHook('Message', token => {\n // Gen-style functions here\n const combinedToken = mergeToken(token, {\n messageNoticeContentPadding: `${(token.controlHeightLG - token.fontSize * token.lineHeight) / 2}px ${token.paddingSM}px`\n });\n return [genMessageStyle(combinedToken)];\n}, token => ({\n height: 150,\n zIndexPopup: token.zIndexPopupBase + 10\n}));","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport { createVNode as _createVNode } from \"vue\";\nimport Notice from '../vc-notification/Notice';\nimport useStyle from './style';\nimport LoadingOutlined from \"@ant-design/icons-vue/es/icons/LoadingOutlined\";\nimport ExclamationCircleFilled from \"@ant-design/icons-vue/es/icons/ExclamationCircleFilled\";\nimport CloseCircleFilled from \"@ant-design/icons-vue/es/icons/CloseCircleFilled\";\nimport CheckCircleFilled from \"@ant-design/icons-vue/es/icons/CheckCircleFilled\";\nimport InfoCircleFilled from \"@ant-design/icons-vue/es/icons/InfoCircleFilled\";\nimport classNames from '../_util/classNames';\nimport { useConfigContextInject } from '../config-provider/context';\nimport { computed, defineComponent } from 'vue';\nexport const TypeIcon = {\n info: _createVNode(InfoCircleFilled, null, null),\n success: _createVNode(CheckCircleFilled, null, null),\n error: _createVNode(CloseCircleFilled, null, null),\n warning: _createVNode(ExclamationCircleFilled, null, null),\n loading: _createVNode(LoadingOutlined, null, null)\n};\nexport const PureContent = defineComponent({\n name: 'PureContent',\n inheritAttrs: false,\n props: ['prefixCls', 'type', 'icon'],\n setup(props, _ref) {\n let {\n slots\n } = _ref;\n return () => {\n var _a;\n return _createVNode(\"div\", {\n \"class\": classNames(`${props.prefixCls}-custom-content`, `${props.prefixCls}-${props.type}`)\n }, [props.icon || TypeIcon[props.type], _createVNode(\"span\", null, [(_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots)])]);\n };\n }\n});\n/** @private Internal Component. Do not use in your production. */\nexport default defineComponent({\n name: 'PurePanel',\n inheritAttrs: false,\n props: ['prefixCls', 'class', 'type', 'icon', 'content'],\n setup(props, _ref2) {\n let {\n slots,\n attrs\n } = _ref2;\n var _a;\n const {\n getPrefixCls\n } = useConfigContextInject();\n const prefixCls = computed(() => props.prefixCls || getPrefixCls('message'));\n const [, hashId] = useStyle(prefixCls);\n return _createVNode(Notice, _objectSpread(_objectSpread({}, attrs), {}, {\n \"prefixCls\": prefixCls.value,\n \"class\": classNames(hashId.value, `${prefixCls.value}-notice-pure-panel`),\n \"noticeKey\": \"pure\",\n \"duration\": null\n }), {\n default: () => [_createVNode(PureContent, {\n \"prefixCls\": prefixCls.value,\n \"type\": props.type,\n \"icon\": props.icon\n }, {\n default: () => [(_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots)]\n })]\n });\n }\n});","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { createVNode as _createVNode } from \"vue\";\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { shallowRef, computed, defineComponent } from 'vue';\nimport { useNotification as useVcNotification } from '../vc-notification';\nimport CloseOutlined from \"@ant-design/icons-vue/es/icons/CloseOutlined\";\nimport useStyle from './style';\nimport { PureContent } from './PurePanel';\nimport { getMotion } from '../vc-trigger/utils/motionUtil';\nimport { wrapPromiseFn } from '../_util/util';\nimport useConfigInject from '../config-provider/hooks/useConfigInject';\nimport classNames from '../_util/classNames';\nconst DEFAULT_OFFSET = 8;\nconst DEFAULT_DURATION = 3;\nconst Holder = defineComponent({\n name: 'Holder',\n inheritAttrs: false,\n props: ['top', 'prefixCls', 'getContainer', 'maxCount', 'duration', 'rtl', 'transitionName', 'onAllRemoved', 'animation', 'staticGetContainer'],\n setup(props, _ref) {\n let {\n expose\n } = _ref;\n var _a, _b;\n const {\n getPrefixCls,\n getPopupContainer\n } = useConfigInject('message', props);\n const prefixCls = computed(() => getPrefixCls('message', props.prefixCls));\n const [, hashId] = useStyle(prefixCls);\n // =============================== Style ===============================\n const getStyles = () => {\n var _a;\n const top = (_a = props.top) !== null && _a !== void 0 ? _a : DEFAULT_OFFSET;\n return {\n left: '50%',\n transform: 'translateX(-50%)',\n top: typeof top === 'number' ? `${top}px` : top\n };\n };\n const getClassName = () => classNames(hashId.value, props.rtl ? `${prefixCls.value}-rtl` : '');\n // ============================== Motion ===============================\n const getNotificationMotion = () => {\n var _a;\n return getMotion({\n prefixCls: prefixCls.value,\n animation: (_a = props.animation) !== null && _a !== void 0 ? _a : `move-up`,\n transitionName: props.transitionName\n });\n };\n // ============================ Close Icon =============================\n const mergedCloseIcon = _createVNode(\"span\", {\n \"class\": `${prefixCls.value}-close-x`\n }, [_createVNode(CloseOutlined, {\n \"class\": `${prefixCls.value}-close-icon`\n }, null)]);\n // ============================== Origin ===============================\n const [api, holder] = useVcNotification({\n //@ts-ignore\n getStyles,\n prefixCls: prefixCls.value,\n getClassName,\n motion: getNotificationMotion,\n closable: false,\n closeIcon: mergedCloseIcon,\n duration: (_a = props.duration) !== null && _a !== void 0 ? _a : DEFAULT_DURATION,\n getContainer: (_b = props.staticGetContainer) !== null && _b !== void 0 ? _b : getPopupContainer.value,\n maxCount: props.maxCount,\n onAllRemoved: props.onAllRemoved\n });\n // ================================ Ref ================================\n expose(_extends(_extends({}, api), {\n prefixCls,\n hashId\n }));\n return holder;\n }\n});\n// ==============================================================================\n// == Hook ==\n// ==============================================================================\nlet keyIndex = 0;\nexport function useInternalMessage(messageConfig) {\n const holderRef = shallowRef(null);\n const holderKey = Symbol('messageHolderKey');\n // ================================ API ================================\n // Wrap with notification content\n // >>> close\n const close = key => {\n var _a;\n (_a = holderRef.value) === null || _a === void 0 ? void 0 : _a.close(key);\n };\n // >>> Open\n const open = config => {\n if (!holderRef.value) {\n const fakeResult = () => {};\n fakeResult.then = () => {};\n return fakeResult;\n }\n const {\n open: originOpen,\n prefixCls,\n hashId\n } = holderRef.value;\n const noticePrefixCls = `${prefixCls}-notice`;\n const {\n content,\n icon,\n type,\n key,\n class: className,\n onClose\n } = config,\n restConfig = __rest(config, [\"content\", \"icon\", \"type\", \"key\", \"class\", \"onClose\"]);\n let mergedKey = key;\n if (mergedKey === undefined || mergedKey === null) {\n keyIndex += 1;\n mergedKey = `antd-message-${keyIndex}`;\n }\n return wrapPromiseFn(resolve => {\n originOpen(_extends(_extends({}, restConfig), {\n key: mergedKey,\n content: () => _createVNode(PureContent, {\n \"prefixCls\": prefixCls,\n \"type\": type,\n \"icon\": typeof icon === 'function' ? icon() : icon\n }, {\n default: () => [typeof content === 'function' ? content() : content]\n }),\n placement: 'top',\n // @ts-ignore\n class: classNames(type && `${noticePrefixCls}-${type}`, hashId, className),\n onClose: () => {\n onClose === null || onClose === void 0 ? void 0 : onClose();\n resolve();\n }\n }));\n // Return close function\n return () => {\n close(mergedKey);\n };\n });\n };\n // >>> destroy\n const destroy = key => {\n var _a;\n if (key !== undefined) {\n close(key);\n } else {\n (_a = holderRef.value) === null || _a === void 0 ? void 0 : _a.destroy();\n }\n };\n const wrapAPI = {\n open,\n destroy\n };\n const keys = ['info', 'success', 'warning', 'error', 'loading'];\n keys.forEach(type => {\n const typeOpen = (jointContent, duration, onClose) => {\n let config;\n if (jointContent && typeof jointContent === 'object' && 'content' in jointContent) {\n config = jointContent;\n } else {\n config = {\n content: jointContent\n };\n }\n // Params\n let mergedDuration;\n let mergedOnClose;\n if (typeof duration === 'function') {\n mergedOnClose = duration;\n } else {\n mergedDuration = duration;\n mergedOnClose = onClose;\n }\n const mergedConfig = _extends(_extends({\n onClose: mergedOnClose,\n duration: mergedDuration\n }, config), {\n type\n });\n return open(mergedConfig);\n };\n wrapAPI[type] = typeOpen;\n });\n // ============================== Return ===============================\n return [wrapAPI, () => _createVNode(Holder, _objectSpread(_objectSpread({\n \"key\": holderKey\n }, messageConfig), {}, {\n \"ref\": holderRef\n }), null)];\n}\nexport default function useMessage(messageConfig) {\n return useInternalMessage(messageConfig);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { createVNode as _createVNode } from \"vue\";\nimport Notification from '../vc-notification';\nimport LoadingOutlined from \"@ant-design/icons-vue/es/icons/LoadingOutlined\";\nimport ExclamationCircleFilled from \"@ant-design/icons-vue/es/icons/ExclamationCircleFilled\";\nimport CloseCircleFilled from \"@ant-design/icons-vue/es/icons/CloseCircleFilled\";\nimport CheckCircleFilled from \"@ant-design/icons-vue/es/icons/CheckCircleFilled\";\nimport InfoCircleFilled from \"@ant-design/icons-vue/es/icons/InfoCircleFilled\";\nimport classNames from '../_util/classNames';\nimport useStyle from './style';\nimport useMessage from './useMessage';\nlet defaultDuration = 3;\nlet defaultTop;\nlet messageInstance;\nlet key = 1;\nlet localPrefixCls = '';\nlet transitionName = 'move-up';\nlet hasTransitionName = false;\nlet getContainer = () => document.body;\nlet maxCount;\nlet rtl = false;\nexport function getKeyThenIncreaseKey() {\n return key++;\n}\nfunction setMessageConfig(options) {\n if (options.top !== undefined) {\n defaultTop = options.top;\n messageInstance = null; // delete messageInstance for new defaultTop\n }\n if (options.duration !== undefined) {\n defaultDuration = options.duration;\n }\n if (options.prefixCls !== undefined) {\n localPrefixCls = options.prefixCls;\n }\n if (options.getContainer !== undefined) {\n getContainer = options.getContainer;\n messageInstance = null; // delete messageInstance for new getContainer\n }\n if (options.transitionName !== undefined) {\n transitionName = options.transitionName;\n messageInstance = null; // delete messageInstance for new transitionName\n hasTransitionName = true;\n }\n if (options.maxCount !== undefined) {\n maxCount = options.maxCount;\n messageInstance = null;\n }\n if (options.rtl !== undefined) {\n rtl = options.rtl;\n }\n}\nfunction getMessageInstance(args, callback) {\n if (messageInstance) {\n callback(messageInstance);\n return;\n }\n Notification.newInstance({\n appContext: args.appContext,\n prefixCls: args.prefixCls || localPrefixCls,\n rootPrefixCls: args.rootPrefixCls,\n transitionName,\n hasTransitionName,\n style: {\n top: defaultTop\n },\n getContainer: getContainer || args.getPopupContainer,\n maxCount,\n name: 'message',\n useStyle\n }, instance => {\n if (messageInstance) {\n callback(messageInstance);\n return;\n }\n messageInstance = instance;\n callback(instance);\n });\n}\nconst typeToIcon = {\n info: InfoCircleFilled,\n success: CheckCircleFilled,\n error: CloseCircleFilled,\n warning: ExclamationCircleFilled,\n loading: LoadingOutlined\n};\nexport const typeList = Object.keys(typeToIcon);\nfunction notice(args) {\n const duration = args.duration !== undefined ? args.duration : defaultDuration;\n const target = args.key || getKeyThenIncreaseKey();\n const closePromise = new Promise(resolve => {\n const callback = () => {\n if (typeof args.onClose === 'function') {\n args.onClose();\n }\n return resolve(true);\n };\n getMessageInstance(args, instance => {\n instance.notice({\n key: target,\n duration,\n style: args.style || {},\n class: args.class,\n content: _ref => {\n let {\n prefixCls\n } = _ref;\n const Icon = typeToIcon[args.type];\n const iconNode = Icon ? _createVNode(Icon, null, null) : '';\n const messageClass = classNames(`${prefixCls}-custom-content`, {\n [`${prefixCls}-${args.type}`]: args.type,\n [`${prefixCls}-rtl`]: rtl === true\n });\n return _createVNode(\"div\", {\n \"class\": messageClass\n }, [typeof args.icon === 'function' ? args.icon() : args.icon || iconNode, _createVNode(\"span\", null, [typeof args.content === 'function' ? args.content() : args.content])]);\n },\n onClose: callback,\n onClick: args.onClick\n });\n });\n });\n const result = () => {\n if (messageInstance) {\n messageInstance.removeNotice(target);\n }\n };\n result.then = (filled, rejected) => closePromise.then(filled, rejected);\n result.promise = closePromise;\n return result;\n}\nfunction isArgsProps(content) {\n return Object.prototype.toString.call(content) === '[object Object]' && !!content.content;\n}\nconst api = {\n open: notice,\n config: setMessageConfig,\n destroy(messageKey) {\n if (messageInstance) {\n if (messageKey) {\n const {\n removeNotice\n } = messageInstance;\n removeNotice(messageKey);\n } else {\n const {\n destroy\n } = messageInstance;\n destroy();\n messageInstance = null;\n }\n }\n }\n};\nexport function attachTypeApi(originalApi, type) {\n originalApi[type] = (content, duration, onClose) => {\n if (isArgsProps(content)) {\n return originalApi.open(_extends(_extends({}, content), {\n type\n }));\n }\n if (typeof duration === 'function') {\n onClose = duration;\n duration = undefined;\n }\n return originalApi.open({\n content,\n duration,\n type,\n onClose\n });\n };\n}\ntypeList.forEach(type => attachTypeApi(api, type));\napi.warn = api.warning;\napi.useMessage = useMessage;\n/** @private test Only function. Not work on production */\nexport const getInstance = () => process.env.NODE_ENV === 'test' ? messageInstance : null;\nexport default api;","import { Keyframes } from '../../_util/cssinjs';\nconst genNotificationPlacementStyle = token => {\n const {\n componentCls,\n width,\n notificationMarginEdge\n } = token;\n const notificationTopFadeIn = new Keyframes('antNotificationTopFadeIn', {\n '0%': {\n marginTop: '-100%',\n opacity: 0\n },\n '100%': {\n marginTop: 0,\n opacity: 1\n }\n });\n const notificationBottomFadeIn = new Keyframes('antNotificationBottomFadeIn', {\n '0%': {\n marginBottom: '-100%',\n opacity: 0\n },\n '100%': {\n marginBottom: 0,\n opacity: 1\n }\n });\n const notificationLeftFadeIn = new Keyframes('antNotificationLeftFadeIn', {\n '0%': {\n right: {\n _skip_check_: true,\n value: width\n },\n opacity: 0\n },\n '100%': {\n right: {\n _skip_check_: true,\n value: 0\n },\n opacity: 1\n }\n });\n return {\n [`&${componentCls}-top, &${componentCls}-bottom`]: {\n marginInline: 0\n },\n [`&${componentCls}-top`]: {\n [`${componentCls}-fade-enter${componentCls}-fade-enter-active, ${componentCls}-fade-appear${componentCls}-fade-appear-active`]: {\n animationName: notificationTopFadeIn\n }\n },\n [`&${componentCls}-bottom`]: {\n [`${componentCls}-fade-enter${componentCls}-fade-enter-active, ${componentCls}-fade-appear${componentCls}-fade-appear-active`]: {\n animationName: notificationBottomFadeIn\n }\n },\n [`&${componentCls}-topLeft, &${componentCls}-bottomLeft`]: {\n marginInlineEnd: 0,\n marginInlineStart: notificationMarginEdge,\n [`${componentCls}-fade-enter${componentCls}-fade-enter-active, ${componentCls}-fade-appear${componentCls}-fade-appear-active`]: {\n animationName: notificationLeftFadeIn\n }\n }\n };\n};\nexport default genNotificationPlacementStyle;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { Keyframes } from '../../_util/cssinjs';\nimport { genComponentStyleHook, mergeToken } from '../../theme/internal';\nimport genNotificationPlacementStyle from './placement';\nimport { resetComponent } from '../../style';\nconst genNotificationStyle = token => {\n const {\n iconCls,\n componentCls,\n // .ant-notification\n boxShadowSecondary,\n fontSizeLG,\n notificationMarginBottom,\n borderRadiusLG,\n colorSuccess,\n colorInfo,\n colorWarning,\n colorError,\n colorTextHeading,\n notificationBg,\n notificationPadding,\n notificationMarginEdge,\n motionDurationMid,\n motionEaseInOut,\n fontSize,\n lineHeight,\n width,\n notificationIconSize\n } = token;\n const noticeCls = `${componentCls}-notice`;\n const notificationFadeIn = new Keyframes('antNotificationFadeIn', {\n '0%': {\n left: {\n _skip_check_: true,\n value: width\n },\n opacity: 0\n },\n '100%': {\n left: {\n _skip_check_: true,\n value: 0\n },\n opacity: 1\n }\n });\n const notificationFadeOut = new Keyframes('antNotificationFadeOut', {\n '0%': {\n maxHeight: token.animationMaxHeight,\n marginBottom: notificationMarginBottom,\n opacity: 1\n },\n '100%': {\n maxHeight: 0,\n marginBottom: 0,\n paddingTop: 0,\n paddingBottom: 0,\n opacity: 0\n }\n });\n return [\n // ============================ Holder ============================\n {\n [componentCls]: _extends(_extends(_extends(_extends({}, resetComponent(token)), {\n position: 'fixed',\n zIndex: token.zIndexPopup,\n marginInlineEnd: notificationMarginEdge,\n [`${componentCls}-hook-holder`]: {\n position: 'relative'\n },\n [`&${componentCls}-top, &${componentCls}-bottom`]: {\n [`${componentCls}-notice`]: {\n marginInline: 'auto auto'\n }\n },\n [`&${componentCls}-topLeft, &${componentCls}-bottomLeft`]: {\n [`${componentCls}-notice`]: {\n marginInlineEnd: 'auto',\n marginInlineStart: 0\n }\n },\n // animation\n [`${componentCls}-fade-enter, ${componentCls}-fade-appear`]: {\n animationDuration: token.motionDurationMid,\n animationTimingFunction: motionEaseInOut,\n animationFillMode: 'both',\n opacity: 0,\n animationPlayState: 'paused'\n },\n [`${componentCls}-fade-leave`]: {\n animationTimingFunction: motionEaseInOut,\n animationFillMode: 'both',\n animationDuration: motionDurationMid,\n animationPlayState: 'paused'\n },\n [`${componentCls}-fade-enter${componentCls}-fade-enter-active, ${componentCls}-fade-appear${componentCls}-fade-appear-active`]: {\n animationName: notificationFadeIn,\n animationPlayState: 'running'\n },\n [`${componentCls}-fade-leave${componentCls}-fade-leave-active`]: {\n animationName: notificationFadeOut,\n animationPlayState: 'running'\n }\n }), genNotificationPlacementStyle(token)), {\n // RTL\n '&-rtl': {\n direction: 'rtl',\n [`${componentCls}-notice-btn`]: {\n float: 'left'\n }\n }\n })\n },\n // ============================ Notice ============================\n {\n [noticeCls]: {\n position: 'relative',\n width,\n maxWidth: `calc(100vw - ${notificationMarginEdge * 2}px)`,\n marginBottom: notificationMarginBottom,\n marginInlineStart: 'auto',\n padding: notificationPadding,\n overflow: 'hidden',\n lineHeight,\n wordWrap: 'break-word',\n background: notificationBg,\n borderRadius: borderRadiusLG,\n boxShadow: boxShadowSecondary,\n [`${componentCls}-close-icon`]: {\n fontSize,\n cursor: 'pointer'\n },\n [`${noticeCls}-message`]: {\n marginBottom: token.marginXS,\n color: colorTextHeading,\n fontSize: fontSizeLG,\n lineHeight: token.lineHeightLG\n },\n [`${noticeCls}-description`]: {\n fontSize\n },\n [`&${noticeCls}-closable ${noticeCls}-message`]: {\n paddingInlineEnd: token.paddingLG\n },\n [`${noticeCls}-with-icon ${noticeCls}-message`]: {\n marginBottom: token.marginXS,\n marginInlineStart: token.marginSM + notificationIconSize,\n fontSize: fontSizeLG\n },\n [`${noticeCls}-with-icon ${noticeCls}-description`]: {\n marginInlineStart: token.marginSM + notificationIconSize,\n fontSize\n },\n // Icon & color style in different selector level\n // https://github.com/ant-design/ant-design/issues/16503\n // https://github.com/ant-design/ant-design/issues/15512\n [`${noticeCls}-icon`]: {\n position: 'absolute',\n fontSize: notificationIconSize,\n lineHeight: 0,\n // icon-font\n [`&-success${iconCls}`]: {\n color: colorSuccess\n },\n [`&-info${iconCls}`]: {\n color: colorInfo\n },\n [`&-warning${iconCls}`]: {\n color: colorWarning\n },\n [`&-error${iconCls}`]: {\n color: colorError\n }\n },\n [`${noticeCls}-close`]: {\n position: 'absolute',\n top: token.notificationPaddingVertical,\n insetInlineEnd: token.notificationPaddingHorizontal,\n color: token.colorIcon,\n outline: 'none',\n width: token.notificationCloseButtonSize,\n height: token.notificationCloseButtonSize,\n borderRadius: token.borderRadiusSM,\n transition: `background-color ${token.motionDurationMid}, color ${token.motionDurationMid}`,\n display: 'flex',\n alignItems: 'center',\n justifyContent: 'center',\n '&:hover': {\n color: token.colorIconHover,\n backgroundColor: token.wireframe ? 'transparent' : token.colorFillContent\n }\n },\n [`${noticeCls}-btn`]: {\n float: 'right',\n marginTop: token.marginSM\n }\n }\n },\n // ============================= Pure =============================\n {\n [`${noticeCls}-pure-panel`]: {\n margin: 0\n }\n }];\n};\n// ============================== Export ==============================\nexport default genComponentStyleHook('Notification', token => {\n const notificationPaddingVertical = token.paddingMD;\n const notificationPaddingHorizontal = token.paddingLG;\n const notificationToken = mergeToken(token, {\n // default.less variables\n notificationBg: token.colorBgElevated,\n notificationPaddingVertical,\n notificationPaddingHorizontal,\n // index.less variables\n notificationPadding: `${token.paddingMD}px ${token.paddingContentHorizontalLG}px`,\n notificationMarginBottom: token.margin,\n notificationMarginEdge: token.marginLG,\n animationMaxHeight: 150,\n notificationIconSize: token.fontSizeLG * token.lineHeightLG,\n notificationCloseButtonSize: token.controlHeightLG * 0.55\n });\n return [genNotificationStyle(notificationToken)];\n}, token => ({\n zIndexPopup: token.zIndexPopupBase + 50,\n width: 384\n}));","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport { createVNode as _createVNode } from \"vue\";\nimport { computed, defineComponent } from 'vue';\nimport useStyle from './style';\nimport useConfigInject from '../config-provider/hooks/useConfigInject';\nimport Notice from '../vc-notification/Notice';\nimport classNames from '../_util/classNames';\nimport LoadingOutlined from \"@ant-design/icons-vue/es/icons/LoadingOutlined\";\nimport ExclamationCircleFilled from \"@ant-design/icons-vue/es/icons/ExclamationCircleFilled\";\nimport CloseCircleFilled from \"@ant-design/icons-vue/es/icons/CloseCircleFilled\";\nimport CheckCircleFilled from \"@ant-design/icons-vue/es/icons/CheckCircleFilled\";\nimport InfoCircleFilled from \"@ant-design/icons-vue/es/icons/InfoCircleFilled\";\nimport CloseOutlined from \"@ant-design/icons-vue/es/icons/CloseOutlined\";\nimport { renderHelper } from '../_util/util';\nexport function getCloseIcon(prefixCls, closeIcon) {\n return closeIcon || _createVNode(\"span\", {\n \"class\": `${prefixCls}-close-x`\n }, [_createVNode(CloseOutlined, {\n \"class\": `${prefixCls}-close-icon`\n }, null)]);\n}\nexport const TypeIcon = {\n info: _createVNode(InfoCircleFilled, null, null),\n success: _createVNode(CheckCircleFilled, null, null),\n error: _createVNode(CloseCircleFilled, null, null),\n warning: _createVNode(ExclamationCircleFilled, null, null),\n loading: _createVNode(LoadingOutlined, null, null)\n};\nconst typeToIcon = {\n success: CheckCircleFilled,\n info: InfoCircleFilled,\n error: CloseCircleFilled,\n warning: ExclamationCircleFilled\n};\nexport function PureContent(_ref) {\n let {\n prefixCls,\n icon,\n type,\n message,\n description,\n btn\n } = _ref;\n let iconNode = null;\n if (icon) {\n iconNode = _createVNode(\"span\", {\n \"class\": `${prefixCls}-icon`\n }, [renderHelper(icon)]);\n } else if (type) {\n const Icon = typeToIcon[type];\n iconNode = _createVNode(Icon, {\n \"class\": `${prefixCls}-icon ${prefixCls}-icon-${type}`\n }, null);\n }\n return _createVNode(\"div\", {\n \"class\": classNames({\n [`${prefixCls}-with-icon`]: iconNode\n }),\n \"role\": \"alert\"\n }, [iconNode, _createVNode(\"div\", {\n \"class\": `${prefixCls}-message`\n }, [message]), _createVNode(\"div\", {\n \"class\": `${prefixCls}-description`\n }, [description]), btn && _createVNode(\"div\", {\n \"class\": `${prefixCls}-btn`\n }, [btn])]);\n}\n/** @private Internal Component. Do not use in your production. */\nexport default defineComponent({\n name: 'PurePanel',\n inheritAttrs: false,\n props: ['prefixCls', 'icon', 'type', 'message', 'description', 'btn', 'closeIcon'],\n setup(props) {\n const {\n getPrefixCls\n } = useConfigInject('notification', props);\n const prefixCls = computed(() => props.prefixCls || getPrefixCls('notification'));\n const noticePrefixCls = computed(() => `${prefixCls.value}-notice`);\n const [, hashId] = useStyle(prefixCls);\n return () => {\n return _createVNode(Notice, _objectSpread(_objectSpread({}, props), {}, {\n \"prefixCls\": prefixCls.value,\n \"class\": classNames(hashId.value, `${noticePrefixCls.value}-pure-panel`),\n \"noticeKey\": \"pure\",\n \"duration\": null,\n \"closable\": props.closable,\n \"closeIcon\": getCloseIcon(prefixCls.value, props.closeIcon)\n }), {\n default: () => [_createVNode(PureContent, {\n \"prefixCls\": noticePrefixCls.value,\n \"icon\": props.icon,\n \"type\": props.type,\n \"message\": props.message,\n \"description\": props.description,\n \"btn\": props.btn\n }, null)]\n });\n };\n }\n});","export function getPlacementStyle(placement, top, bottom) {\n let style;\n top = typeof top === 'number' ? `${top}px` : top;\n bottom = typeof bottom === 'number' ? `${bottom}px` : bottom;\n switch (placement) {\n case 'top':\n style = {\n left: '50%',\n transform: 'translateX(-50%)',\n right: 'auto',\n top,\n bottom: 'auto'\n };\n break;\n case 'topLeft':\n style = {\n left: 0,\n top,\n bottom: 'auto'\n };\n break;\n case 'topRight':\n style = {\n right: 0,\n top,\n bottom: 'auto'\n };\n break;\n case 'bottom':\n style = {\n left: '50%',\n transform: 'translateX(-50%)',\n right: 'auto',\n top: 'auto',\n bottom\n };\n break;\n case 'bottomLeft':\n style = {\n left: 0,\n top: 'auto',\n bottom\n };\n break;\n default:\n style = {\n right: 0,\n top: 'auto',\n bottom\n };\n break;\n }\n return style;\n}\nexport function getMotion(prefixCls) {\n return {\n name: `${prefixCls}-fade`\n };\n}","import _objectSpread from \"@babel/runtime/helpers/esm/objectSpread2\";\nimport _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { createVNode as _createVNode } from \"vue\";\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { shallowRef, computed, defineComponent } from 'vue';\nimport { useNotification as useVcNotification } from '../vc-notification';\nimport useStyle from './style';\nimport { getCloseIcon, PureContent } from './PurePanel';\nimport { getMotion, getPlacementStyle } from './util';\nimport useConfigInject from '../config-provider/hooks/useConfigInject';\nimport classNames from '../_util/classNames';\nconst DEFAULT_OFFSET = 24;\nconst DEFAULT_DURATION = 4.5;\nconst Holder = defineComponent({\n name: 'Holder',\n inheritAttrs: false,\n props: ['prefixCls', 'class', 'type', 'icon', 'content', 'onAllRemoved'],\n setup(props, _ref) {\n let {\n expose\n } = _ref;\n const {\n getPrefixCls,\n getPopupContainer\n } = useConfigInject('notification', props);\n const prefixCls = computed(() => props.prefixCls || getPrefixCls('notification'));\n // =============================== Style ===============================\n const getStyles = placement => {\n var _a, _b;\n return getPlacementStyle(placement, (_a = props.top) !== null && _a !== void 0 ? _a : DEFAULT_OFFSET, (_b = props.bottom) !== null && _b !== void 0 ? _b : DEFAULT_OFFSET);\n };\n // Style\n const [, hashId] = useStyle(prefixCls);\n const getClassName = () => classNames(hashId.value, {\n [`${prefixCls.value}-rtl`]: props.rtl\n });\n // ============================== Motion ===============================\n const getNotificationMotion = () => getMotion(prefixCls.value);\n // ============================== Origin ===============================\n const [api, holder] = useVcNotification({\n prefixCls: prefixCls.value,\n getStyles,\n getClassName,\n motion: getNotificationMotion,\n closable: true,\n closeIcon: getCloseIcon(prefixCls.value),\n duration: DEFAULT_DURATION,\n getContainer: () => {\n var _a, _b;\n return ((_a = props.getPopupContainer) === null || _a === void 0 ? void 0 : _a.call(props)) || ((_b = getPopupContainer.value) === null || _b === void 0 ? void 0 : _b.call(getPopupContainer)) || document.body;\n },\n maxCount: props.maxCount,\n hashId: hashId.value,\n onAllRemoved: props.onAllRemoved\n });\n // ================================ Ref ================================\n expose(_extends(_extends({}, api), {\n prefixCls: prefixCls.value,\n hashId\n }));\n return holder;\n }\n});\n// ==============================================================================\n// == Hook ==\n// ==============================================================================\nexport function useInternalNotification(notificationConfig) {\n const holderRef = shallowRef(null);\n const holderKey = Symbol('notificationHolderKey');\n // ================================ API ================================\n // Wrap with notification content\n // >>> Open\n const open = config => {\n if (!holderRef.value) {\n return;\n }\n const {\n open: originOpen,\n prefixCls,\n hashId\n } = holderRef.value;\n const noticePrefixCls = `${prefixCls}-notice`;\n const {\n message,\n description,\n icon,\n type,\n btn,\n class: className\n } = config,\n restConfig = __rest(config, [\"message\", \"description\", \"icon\", \"type\", \"btn\", \"class\"]);\n return originOpen(_extends(_extends({\n placement: 'topRight'\n }, restConfig), {\n content: () => _createVNode(PureContent, {\n \"prefixCls\": noticePrefixCls,\n \"icon\": typeof icon === 'function' ? icon() : icon,\n \"type\": type,\n \"message\": typeof message === 'function' ? message() : message,\n \"description\": typeof description === 'function' ? description() : description,\n \"btn\": typeof btn === 'function' ? btn() : btn\n }, null),\n // @ts-ignore\n class: classNames(type && `${noticePrefixCls}-${type}`, hashId, className)\n }));\n };\n // >>> destroy\n const destroy = key => {\n var _a, _b;\n if (key !== undefined) {\n (_a = holderRef.value) === null || _a === void 0 ? void 0 : _a.close(key);\n } else {\n (_b = holderRef.value) === null || _b === void 0 ? void 0 : _b.destroy();\n }\n };\n const wrapAPI = {\n open,\n destroy\n };\n const keys = ['success', 'info', 'warning', 'error'];\n keys.forEach(type => {\n wrapAPI[type] = config => open(_extends(_extends({}, config), {\n type\n }));\n });\n // ============================== Return ===============================\n return [wrapAPI, () => _createVNode(Holder, _objectSpread(_objectSpread({\n \"key\": holderKey\n }, notificationConfig), {}, {\n \"ref\": holderRef\n }), null)];\n}\nexport default function useNotification(notificationConfig) {\n return useInternalNotification(notificationConfig);\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { createVNode as _createVNode } from \"vue\";\nvar __awaiter = this && this.__awaiter || function (thisArg, _arguments, P, generator) {\n function adopt(value) {\n return value instanceof P ? value : new P(function (resolve) {\n resolve(value);\n });\n }\n return new (P || (P = Promise))(function (resolve, reject) {\n function fulfilled(value) {\n try {\n step(generator.next(value));\n } catch (e) {\n reject(e);\n }\n }\n function rejected(value) {\n try {\n step(generator[\"throw\"](value));\n } catch (e) {\n reject(e);\n }\n }\n function step(result) {\n result.done ? resolve(result.value) : adopt(result.value).then(fulfilled, rejected);\n }\n step((generator = generator.apply(thisArg, _arguments || [])).next());\n });\n};\nimport Notification from '../vc-notification';\nimport CheckCircleOutlined from \"@ant-design/icons-vue/es/icons/CheckCircleOutlined\";\nimport InfoCircleOutlined from \"@ant-design/icons-vue/es/icons/InfoCircleOutlined\";\nimport CloseCircleOutlined from \"@ant-design/icons-vue/es/icons/CloseCircleOutlined\";\nimport ExclamationCircleOutlined from \"@ant-design/icons-vue/es/icons/ExclamationCircleOutlined\";\nimport CloseOutlined from \"@ant-design/icons-vue/es/icons/CloseOutlined\";\nimport { renderHelper } from '../_util/util';\nimport { globalConfig } from '../config-provider';\nimport classNames from '../_util/classNames';\nimport useStyle from './style';\nimport useNotification from './useNotification';\nimport { getPlacementStyle } from './util';\nconst notificationInstance = {};\nlet defaultDuration = 4.5;\nlet defaultTop = '24px';\nlet defaultBottom = '24px';\nlet defaultPrefixCls = '';\nlet defaultPlacement = 'topRight';\nlet defaultGetContainer = () => document.body;\nlet defaultCloseIcon = null;\nlet rtl = false;\nlet maxCount;\nfunction setNotificationConfig(options) {\n const {\n duration,\n placement,\n bottom,\n top,\n getContainer,\n closeIcon,\n prefixCls\n } = options;\n if (prefixCls !== undefined) {\n defaultPrefixCls = prefixCls;\n }\n if (duration !== undefined) {\n defaultDuration = duration;\n }\n if (placement !== undefined) {\n defaultPlacement = placement;\n }\n if (bottom !== undefined) {\n defaultBottom = typeof bottom === 'number' ? `${bottom}px` : bottom;\n }\n if (top !== undefined) {\n defaultTop = typeof top === 'number' ? `${top}px` : top;\n }\n if (getContainer !== undefined) {\n defaultGetContainer = getContainer;\n }\n if (closeIcon !== undefined) {\n defaultCloseIcon = closeIcon;\n }\n if (options.rtl !== undefined) {\n rtl = options.rtl;\n }\n if (options.maxCount !== undefined) {\n maxCount = options.maxCount;\n }\n}\nfunction getNotificationInstance(_ref, callback) {\n let {\n prefixCls: customizePrefixCls,\n placement = defaultPlacement,\n getContainer = defaultGetContainer,\n top,\n bottom,\n closeIcon = defaultCloseIcon,\n appContext\n } = _ref;\n const {\n getPrefixCls\n } = globalConfig();\n const prefixCls = getPrefixCls('notification', customizePrefixCls || defaultPrefixCls);\n const cacheKey = `${prefixCls}-${placement}-${rtl}`;\n const cacheInstance = notificationInstance[cacheKey];\n if (cacheInstance) {\n Promise.resolve(cacheInstance).then(instance => {\n callback(instance);\n });\n return;\n }\n const notificationClass = classNames(`${prefixCls}-${placement}`, {\n [`${prefixCls}-rtl`]: rtl === true\n });\n Notification.newInstance({\n name: 'notification',\n prefixCls: customizePrefixCls || defaultPrefixCls,\n useStyle,\n class: notificationClass,\n style: getPlacementStyle(placement, top !== null && top !== void 0 ? top : defaultTop, bottom !== null && bottom !== void 0 ? bottom : defaultBottom),\n appContext,\n getContainer,\n closeIcon: _ref2 => {\n let {\n prefixCls\n } = _ref2;\n const closeIconToRender = _createVNode(\"span\", {\n \"class\": `${prefixCls}-close-x`\n }, [renderHelper(closeIcon, {}, _createVNode(CloseOutlined, {\n \"class\": `${prefixCls}-close-icon`\n }, null))]);\n return closeIconToRender;\n },\n maxCount,\n hasTransitionName: true\n }, notification => {\n notificationInstance[cacheKey] = notification;\n callback(notification);\n });\n}\nconst typeToIcon = {\n success: CheckCircleOutlined,\n info: InfoCircleOutlined,\n error: CloseCircleOutlined,\n warning: ExclamationCircleOutlined\n};\nfunction notice(args) {\n const {\n icon,\n type,\n description,\n message,\n btn\n } = args;\n const duration = args.duration === undefined ? defaultDuration : args.duration;\n getNotificationInstance(args, notification => {\n notification.notice({\n content: _ref3 => {\n let {\n prefixCls: outerPrefixCls\n } = _ref3;\n const prefixCls = `${outerPrefixCls}-notice`;\n let iconNode = null;\n if (icon) {\n iconNode = () => _createVNode(\"span\", {\n \"class\": `${prefixCls}-icon`\n }, [renderHelper(icon)]);\n } else if (type) {\n const Icon = typeToIcon[type];\n iconNode = () => _createVNode(Icon, {\n \"class\": `${prefixCls}-icon ${prefixCls}-icon-${type}`\n }, null);\n }\n return _createVNode(\"div\", {\n \"class\": iconNode ? `${prefixCls}-with-icon` : ''\n }, [iconNode && iconNode(), _createVNode(\"div\", {\n \"class\": `${prefixCls}-message`\n }, [!description && iconNode ? _createVNode(\"span\", {\n \"class\": `${prefixCls}-message-single-line-auto-margin`\n }, null) : null, renderHelper(message)]), _createVNode(\"div\", {\n \"class\": `${prefixCls}-description`\n }, [renderHelper(description)]), btn ? _createVNode(\"span\", {\n \"class\": `${prefixCls}-btn`\n }, [renderHelper(btn)]) : null]);\n },\n duration,\n closable: true,\n onClose: args.onClose,\n onClick: args.onClick,\n key: args.key,\n style: args.style || {},\n class: args.class\n });\n });\n}\nconst api = {\n open: notice,\n close(key) {\n Object.keys(notificationInstance).forEach(cacheKey => Promise.resolve(notificationInstance[cacheKey]).then(instance => {\n instance.removeNotice(key);\n }));\n },\n config: setNotificationConfig,\n destroy() {\n Object.keys(notificationInstance).forEach(cacheKey => {\n Promise.resolve(notificationInstance[cacheKey]).then(instance => {\n instance.destroy();\n });\n delete notificationInstance[cacheKey]; // lgtm[js/missing-await]\n });\n }\n};\nconst iconTypes = ['success', 'info', 'warning', 'error'];\niconTypes.forEach(type => {\n api[type] = args => api.open(_extends(_extends({}, args), {\n type\n }));\n});\napi.warn = api.warning;\napi.useNotification = useNotification;\n/** @private test Only function. Not work on production */\nexport const getInstance = cacheKey => __awaiter(void 0, void 0, void 0, function* () {\n return process.env.NODE_ENV === 'test' ? notificationInstance[cacheKey] : null;\n});\nexport default api;","/* eslint-disable import/prefer-default-export, prefer-destructuring */\nimport { TinyColor } from '@ctrl/tinycolor';\nimport { generate } from '@ant-design/colors';\nimport { updateCSS } from '../vc-util/Dom/dynamicCSS';\nimport canUseDom from '../_util/canUseDom';\nimport warning from '../_util/warning';\nconst dynamicStyleMark = `-ant-${Date.now()}-${Math.random()}`;\nexport function getStyle(globalPrefixCls, theme) {\n const variables = {};\n const formatColor = (color, updater) => {\n let clone = color.clone();\n clone = (updater === null || updater === void 0 ? void 0 : updater(clone)) || clone;\n return clone.toRgbString();\n };\n const fillColor = (colorVal, type) => {\n const baseColor = new TinyColor(colorVal);\n const colorPalettes = generate(baseColor.toRgbString());\n variables[`${type}-color`] = formatColor(baseColor);\n variables[`${type}-color-disabled`] = colorPalettes[1];\n variables[`${type}-color-hover`] = colorPalettes[4];\n variables[`${type}-color-active`] = colorPalettes[6];\n variables[`${type}-color-outline`] = baseColor.clone().setAlpha(0.2).toRgbString();\n variables[`${type}-color-deprecated-bg`] = colorPalettes[0];\n variables[`${type}-color-deprecated-border`] = colorPalettes[2];\n };\n // ================ Primary Color ================\n if (theme.primaryColor) {\n fillColor(theme.primaryColor, 'primary');\n const primaryColor = new TinyColor(theme.primaryColor);\n const primaryColors = generate(primaryColor.toRgbString());\n // Legacy - We should use semantic naming standard\n primaryColors.forEach((color, index) => {\n variables[`primary-${index + 1}`] = color;\n });\n // Deprecated\n variables['primary-color-deprecated-l-35'] = formatColor(primaryColor, c => c.lighten(35));\n variables['primary-color-deprecated-l-20'] = formatColor(primaryColor, c => c.lighten(20));\n variables['primary-color-deprecated-t-20'] = formatColor(primaryColor, c => c.tint(20));\n variables['primary-color-deprecated-t-50'] = formatColor(primaryColor, c => c.tint(50));\n variables['primary-color-deprecated-f-12'] = formatColor(primaryColor, c => c.setAlpha(c.getAlpha() * 0.12));\n const primaryActiveColor = new TinyColor(primaryColors[0]);\n variables['primary-color-active-deprecated-f-30'] = formatColor(primaryActiveColor, c => c.setAlpha(c.getAlpha() * 0.3));\n variables['primary-color-active-deprecated-d-02'] = formatColor(primaryActiveColor, c => c.darken(2));\n }\n // ================ Success Color ================\n if (theme.successColor) {\n fillColor(theme.successColor, 'success');\n }\n // ================ Warning Color ================\n if (theme.warningColor) {\n fillColor(theme.warningColor, 'warning');\n }\n // ================= Error Color =================\n if (theme.errorColor) {\n fillColor(theme.errorColor, 'error');\n }\n // ================= Info Color ==================\n if (theme.infoColor) {\n fillColor(theme.infoColor, 'info');\n }\n // Convert to css variables\n const cssList = Object.keys(variables).map(key => `--${globalPrefixCls}-${key}: ${variables[key]};`);\n return `\n :root {\n ${cssList.join('\\n')}\n }\n `.trim();\n}\nexport function registerTheme(globalPrefixCls, theme) {\n const style = getStyle(globalPrefixCls, theme);\n if (canUseDom()) {\n updateCSS(style, `${dynamicStyleMark}-dynamic-theme`);\n } else {\n warning(false, 'ConfigProvider', 'SSR do not support dynamic theme with css variables.');\n }\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { useStyleRegister } from '../../_util/cssinjs';\nimport { resetIcon } from '../../style';\nimport { useToken } from '../../theme/internal';\nimport { computed } from 'vue';\nconst useStyle = iconPrefixCls => {\n const [theme, token] = useToken();\n // Generate style for icons\n return useStyleRegister(computed(() => ({\n theme: theme.value,\n token: token.value,\n hashId: '',\n path: ['ant-design-icons', iconPrefixCls.value]\n })), () => [{\n [`.${iconPrefixCls.value}`]: _extends(_extends({}, resetIcon()), {\n [`.${iconPrefixCls.value} .${iconPrefixCls.value}-icon`]: {\n display: 'block'\n }\n })\n }]);\n};\nexport default useStyle;","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { defaultConfig } from '../../theme/internal';\nimport { computed } from 'vue';\nexport default function useTheme(theme, parentTheme) {\n const themeConfig = computed(() => (theme === null || theme === void 0 ? void 0 : theme.value) || {});\n const parentThemeConfig = computed(() => themeConfig.value.inherit === false || !(parentTheme === null || parentTheme === void 0 ? void 0 : parentTheme.value) ? defaultConfig : parentTheme.value);\n const mergedTheme = computed(() => {\n if (!(theme === null || theme === void 0 ? void 0 : theme.value)) {\n return parentTheme === null || parentTheme === void 0 ? void 0 : parentTheme.value;\n }\n // Override\n const mergedComponents = _extends({}, parentThemeConfig.value.components);\n Object.keys(theme.value.components || {}).forEach(componentName => {\n mergedComponents[componentName] = _extends(_extends({}, mergedComponents[componentName]), theme.value.components[componentName]);\n });\n // Base token\n return _extends(_extends(_extends({}, parentThemeConfig.value), themeConfig.value), {\n token: _extends(_extends({}, parentThemeConfig.value.token), themeConfig.value.token),\n components: mergedComponents\n });\n });\n return mergedTheme;\n}","import _extends from \"@babel/runtime/helpers/esm/extends\";\nimport { createVNode as _createVNode } from \"vue\";\nvar __rest = this && this.__rest || function (s, e) {\n var t = {};\n for (var p in s) if (Object.prototype.hasOwnProperty.call(s, p) && e.indexOf(p) < 0) t[p] = s[p];\n if (s != null && typeof Object.getOwnPropertySymbols === \"function\") for (var i = 0, p = Object.getOwnPropertySymbols(s); i < p.length; i++) {\n if (e.indexOf(p[i]) < 0 && Object.prototype.propertyIsEnumerable.call(s, p[i])) t[p[i]] = s[p[i]];\n }\n return t;\n};\nimport { watch, computed, reactive, defineComponent, watchEffect } from 'vue';\nimport defaultRenderEmpty from './renderEmpty';\nimport LocaleProvider, { ANT_MARK } from '../locale-provider';\nimport LocaleReceiver from '../locale-provider/LocaleReceiver';\nimport message from '../message';\nimport notification from '../notification';\nimport { registerTheme } from './cssVariables';\nimport defaultLocale from '../locale/en_US';\nimport useStyle from './style';\nimport useTheme from './hooks/useTheme';\nimport defaultSeedToken from '../theme/themes/seed';\nimport { useConfigContextProvider, useConfigContextInject, configProviderProps, useProvideGlobalForm, defaultIconPrefixCls } from './context';\nimport { useProviderSize } from './SizeContext';\nimport { useProviderDisabled } from './DisabledContext';\nimport { createTheme } from '../_util/cssinjs';\nimport { DesignTokenProvider } from '../theme/internal';\nexport const defaultPrefixCls = 'ant';\nexport { defaultIconPrefixCls };\nfunction getGlobalPrefixCls() {\n return globalConfigForApi.prefixCls || defaultPrefixCls;\n}\nfunction getGlobalIconPrefixCls() {\n return globalConfigForApi.iconPrefixCls || defaultIconPrefixCls;\n}\nconst globalConfigBySet = reactive({}); // 权重最大\nexport const globalConfigForApi = reactive({});\nexport const configConsumerProps = ['getTargetContainer', 'getPopupContainer', 'rootPrefixCls', 'getPrefixCls', 'renderEmpty', 'csp', 'autoInsertSpaceInButton', 'locale', 'pageHeader'];\nwatchEffect(() => {\n _extends(globalConfigForApi, globalConfigBySet);\n globalConfigForApi.prefixCls = getGlobalPrefixCls();\n globalConfigForApi.iconPrefixCls = getGlobalIconPrefixCls();\n globalConfigForApi.getPrefixCls = (suffixCls, customizePrefixCls) => {\n if (customizePrefixCls) return customizePrefixCls;\n return suffixCls ? `${globalConfigForApi.prefixCls}-${suffixCls}` : globalConfigForApi.prefixCls;\n };\n globalConfigForApi.getRootPrefixCls = () => {\n // If Global prefixCls provided, use this\n if (globalConfigForApi.prefixCls) {\n return globalConfigForApi.prefixCls;\n }\n // Fallback to default prefixCls\n return getGlobalPrefixCls();\n };\n});\nlet stopWatchEffect;\nconst setGlobalConfig = params => {\n if (stopWatchEffect) {\n stopWatchEffect();\n }\n stopWatchEffect = watchEffect(() => {\n _extends(globalConfigBySet, reactive(params));\n _extends(globalConfigForApi, reactive(params));\n });\n if (params.theme) {\n registerTheme(getGlobalPrefixCls(), params.theme);\n }\n};\nexport const globalConfig = () => ({\n getPrefixCls: (suffixCls, customizePrefixCls) => {\n if (customizePrefixCls) return customizePrefixCls;\n return suffixCls ? `${getGlobalPrefixCls()}-${suffixCls}` : getGlobalPrefixCls();\n },\n getIconPrefixCls: getGlobalIconPrefixCls,\n getRootPrefixCls: () => {\n // If Global prefixCls provided, use this\n if (globalConfigForApi.prefixCls) {\n return globalConfigForApi.prefixCls;\n }\n // Fallback to default prefixCls\n return getGlobalPrefixCls();\n }\n});\nconst ConfigProvider = defineComponent({\n compatConfig: {\n MODE: 3\n },\n name: 'AConfigProvider',\n inheritAttrs: false,\n props: configProviderProps(),\n setup(props, _ref) {\n let {\n slots\n } = _ref;\n const parentContext = useConfigContextInject();\n const getPrefixCls = (suffixCls, customizePrefixCls) => {\n const {\n prefixCls = 'ant'\n } = props;\n if (customizePrefixCls) return customizePrefixCls;\n const mergedPrefixCls = prefixCls || parentContext.getPrefixCls('');\n return suffixCls ? `${mergedPrefixCls}-${suffixCls}` : mergedPrefixCls;\n };\n const iconPrefixCls = computed(() => props.iconPrefixCls || parentContext.iconPrefixCls.value || defaultIconPrefixCls);\n const shouldWrapSSR = computed(() => iconPrefixCls.value !== parentContext.iconPrefixCls.value);\n const csp = computed(() => {\n var _a;\n return props.csp || ((_a = parentContext.csp) === null || _a === void 0 ? void 0 : _a.value);\n });\n const wrapSSR = useStyle(iconPrefixCls);\n const mergedTheme = useTheme(computed(() => props.theme), computed(() => {\n var _a;\n return (_a = parentContext.theme) === null || _a === void 0 ? void 0 : _a.value;\n }));\n const renderEmptyComponent = name => {\n const renderEmpty = props.renderEmpty || slots.renderEmpty || parentContext.renderEmpty || defaultRenderEmpty;\n return renderEmpty(name);\n };\n const autoInsertSpaceInButton = computed(() => {\n var _a, _b;\n return (_a = props.autoInsertSpaceInButton) !== null && _a !== void 0 ? _a : (_b = parentContext.autoInsertSpaceInButton) === null || _b === void 0 ? void 0 : _b.value;\n });\n const locale = computed(() => {\n var _a;\n return props.locale || ((_a = parentContext.locale) === null || _a === void 0 ? void 0 : _a.value);\n });\n watch(locale, () => {\n globalConfigBySet.locale = locale.value;\n }, {\n immediate: true\n });\n const direction = computed(() => {\n var _a;\n return props.direction || ((_a = parentContext.direction) === null || _a === void 0 ? void 0 : _a.value);\n });\n const space = computed(() => {\n var _a, _b;\n return (_a = props.space) !== null && _a !== void 0 ? _a : (_b = parentContext.space) === null || _b === void 0 ? void 0 : _b.value;\n });\n const virtual = computed(() => {\n var _a, _b;\n return (_a = props.virtual) !== null && _a !== void 0 ? _a : (_b = parentContext.virtual) === null || _b === void 0 ? void 0 : _b.value;\n });\n const dropdownMatchSelectWidth = computed(() => {\n var _a, _b;\n return (_a = props.dropdownMatchSelectWidth) !== null && _a !== void 0 ? _a : (_b = parentContext.dropdownMatchSelectWidth) === null || _b === void 0 ? void 0 : _b.value;\n });\n const getTargetContainer = computed(() => {\n var _a;\n return props.getTargetContainer !== undefined ? props.getTargetContainer : (_a = parentContext.getTargetContainer) === null || _a === void 0 ? void 0 : _a.value;\n });\n const getPopupContainer = computed(() => {\n var _a;\n return props.getPopupContainer !== undefined ? props.getPopupContainer : (_a = parentContext.getPopupContainer) === null || _a === void 0 ? void 0 : _a.value;\n });\n const pageHeader = computed(() => {\n var _a;\n return props.pageHeader !== undefined ? props.pageHeader : (_a = parentContext.pageHeader) === null || _a === void 0 ? void 0 : _a.value;\n });\n const input = computed(() => {\n var _a;\n return props.input !== undefined ? props.input : (_a = parentContext.input) === null || _a === void 0 ? void 0 : _a.value;\n });\n const pagination = computed(() => {\n var _a;\n return props.pagination !== undefined ? props.pagination : (_a = parentContext.pagination) === null || _a === void 0 ? void 0 : _a.value;\n });\n const form = computed(() => {\n var _a;\n return props.form !== undefined ? props.form : (_a = parentContext.form) === null || _a === void 0 ? void 0 : _a.value;\n });\n const select = computed(() => {\n var _a;\n return props.select !== undefined ? props.select : (_a = parentContext.select) === null || _a === void 0 ? void 0 : _a.value;\n });\n const componentSize = computed(() => props.componentSize);\n const componentDisabled = computed(() => props.componentDisabled);\n const wave = computed(() => {\n var _a, _b;\n return (_a = props.wave) !== null && _a !== void 0 ? _a : (_b = parentContext.wave) === null || _b === void 0 ? void 0 : _b.value;\n });\n const configProvider = {\n csp,\n autoInsertSpaceInButton,\n locale,\n direction,\n space,\n virtual,\n dropdownMatchSelectWidth,\n getPrefixCls,\n iconPrefixCls,\n theme: computed(() => {\n var _a, _b;\n return (_a = mergedTheme.value) !== null && _a !== void 0 ? _a : (_b = parentContext.theme) === null || _b === void 0 ? void 0 : _b.value;\n }),\n renderEmpty: renderEmptyComponent,\n getTargetContainer,\n getPopupContainer,\n pageHeader,\n input,\n pagination,\n form,\n select,\n componentSize,\n componentDisabled,\n transformCellText: computed(() => props.transformCellText),\n wave\n };\n // ================================ Dynamic theme ================================\n const memoTheme = computed(() => {\n const _a = mergedTheme.value || {},\n {\n algorithm,\n token\n } = _a,\n rest = __rest(_a, [\"algorithm\", \"token\"]);\n const themeObj = algorithm && (!Array.isArray(algorithm) || algorithm.length > 0) ? createTheme(algorithm) : undefined;\n return _extends(_extends({}, rest), {\n theme: themeObj,\n token: _extends(_extends({}, defaultSeedToken), token)\n });\n });\n const validateMessagesRef = computed(() => {\n var _a, _b;\n // Additional Form provider\n let validateMessages = {};\n if (locale.value) {\n validateMessages = ((_a = locale.value.Form) === null || _a === void 0 ? void 0 : _a.defaultValidateMessages) || ((_b = defaultLocale.Form) === null || _b === void 0 ? void 0 : _b.defaultValidateMessages) || {};\n }\n if (props.form && props.form.validateMessages) {\n validateMessages = _extends(_extends({}, validateMessages), props.form.validateMessages);\n }\n return validateMessages;\n });\n useConfigContextProvider(configProvider);\n useProvideGlobalForm({\n validateMessages: validateMessagesRef\n });\n useProviderSize(componentSize);\n useProviderDisabled(componentDisabled);\n const renderProvider = legacyLocale => {\n var _a, _b;\n let childNode = shouldWrapSSR.value ? wrapSSR((_a = slots.default) === null || _a === void 0 ? void 0 : _a.call(slots)) : (_b = slots.default) === null || _b === void 0 ? void 0 : _b.call(slots);\n if (props.theme) {\n const _childNode = function () {\n return childNode;\n }();\n childNode = _createVNode(DesignTokenProvider, {\n \"value\": memoTheme.value\n }, {\n default: () => [_childNode]\n });\n }\n return _createVNode(LocaleProvider, {\n \"locale\": locale.value || legacyLocale,\n \"ANT_MARK__\": ANT_MARK\n }, {\n default: () => [childNode]\n });\n };\n watchEffect(() => {\n if (direction.value) {\n message.config({\n rtl: direction.value === 'rtl'\n });\n notification.config({\n rtl: direction.value === 'rtl'\n });\n }\n });\n return () => _createVNode(LocaleReceiver, {\n \"children\": (_, __, legacyLocale) => renderProvider(legacyLocale)\n }, null);\n }\n});\nConfigProvider.config = setGlobalConfig;\nConfigProvider.install = function (app) {\n app.component(ConfigProvider.name, ConfigProvider);\n};\nexport default ConfigProvider;","import { useRequest } from 'liyu-pc-base/init-plugin';\n\nexport async function queryRoleAndPerson(params?: { [key: string]: any }): Promise<RoleResponse> {\n return useRequest().post('/permission/query_role_and_person_list', params);\n}\n\nexport async function removeRole(params: Record<string, any>) {\n return useRequest().post('/permission/delete_role', params);\n}\nexport async function recoverRole(params: Record<string, any>) {\n return useRequest().post('/permission/recover_role', params);\n}\nexport async function query_role_and_person_by_admin_list(params?: {\n [key: string]: any;\n}): Promise<RoleResponse> {\n return useRequest().post('/permission/query_role_and_person_by_admin_list', params);\n}\n\nexport async function addRole(params: Record<string, any>) {\n return useRequest().post('/permission/create_role', params);\n}\n\nexport async function updateRole(params: Record<string, any>) {\n return useRequest().post('/permission/update_role', params);\n}\nexport async function copy_role_info(params: Record<string, any>) {\n return useRequest().post('/permission/copy_role_info', params);\n}\nexport async function import_role(params: Record<string, any>) {\n return useRequest().post('/permission/import_role', params);\n}\nexport async function import_role_by_super(params: Record<string, any>) {\n return useRequest().post('/permission/import_role_by_super', params);\n}\nexport async function export_role_by_super(params: Record<string, any>) {\n return useRequest().post('/permission/export_role_by_super', params);\n}\ninterface RuleItem {\n key: string | number;\n callNo: number;\n avatar: string;\n desc: string;\n disabled: false;\n href: string;\n name: string;\n owner: string;\n progress: number;\n status: number;\n updatedAt: string;\n createdAt: string;\n}\n\ninterface RoleResponse {\n current: number;\n data: RuleItem[];\n pageSize: string;\n success: boolean;\n total: number;\n}\n","import { message } from 'ant-design-vue/es';\nimport { reactive } from 'vue';\n\nimport modalBox from 'liyu-pc-base/components/form-modal/modal-tools';\nimport { copy_role_info } from 'liyu-pc-base/api/permission/auth-manage';\nimport { event_obj } from 'liyu-pc-base/init-plugin';\nimport type { BtnListConfig, HeadBtnListConfig } from 'liyu-pc-base/api/typing';\n\nexport const btn_list: BtnListConfig = [\n {\n name: '权限配置',\n type: 'dropdown',\n is_show: ({ record }) => {\n return record.is_active;\n },\n cb: ({ record }) => {\n const editModal = reactive({\n visible: true,\n role_id: record.id,\n aim_org_id: record.org_id,\n component: 'AuthEditModal',\n ok: (data: any) => {},\n });\n modalBox(editModal);\n },\n },\n {\n name: '复制角色',\n type: 'dropdown',\n is_show: ({ record }) => {\n return record.is_active;\n },\n cb: ({ record, current_org }) => {\n const editModal = reactive({\n open: true,\n title: '复制角色',\n form: {\n settings: {\n name: '表单名称',\n labelAlign: 'right',\n layout: 'horizontal',\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '角色名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写角色名称',\n },\n {\n type: 'input',\n name: 'flag',\n label: '角色标识',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写角色标识',\n },\n {\n type: 'textarea',\n name: 'desc',\n label: '角色描述',\n disabled: false,\n allowClear: true,\n defaultValue: '',\n placeholder: '请填写角色描述',\n },\n ],\n rules: {\n name: [{ required: true, message: '角色名称必须填写' }],\n },\n model: reactive({\n org_id: current_org.id,\n name: '',\n desc: '',\n flag: '',\n }),\n },\n options: {},\n ok: data => {\n copy_role_info({\n ...data,\n org_id: current_org.id,\n role_id: record.id,\n }).then(() => {\n message.success('复制角色成功');\n event_obj().emit('refresh');\n });\n },\n });\n modalBox(editModal);\n },\n },\n {\n name: '批量改名',\n model_kind: 'form',\n type: 'dropdown',\n clazz: 'primary',\n model_config: {\n ok_url: 'permission/batch_rename_role',\n api_fields: {\n role_id: 'id',\n },\n form: {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: [],\n },\n dynamicFieldList: [\n {\n key: '80485d8f9a9a47b5747344eebc3b38e3',\n children: [\n {\n type: 'input',\n label: '名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n addonAfter: null,\n addonBefore: null,\n prefix: null,\n suffix: null,\n prefixIcon: null,\n suffixIcon: null,\n addonBeforeIcon: null,\n addonAfterIcon: null,\n placeholder: '请填写名称',\n maxlength: 100,\n name: 'name',\n key: '8d93a6f4d69e889d896ae4310e5ee7f0',\n span: 24,\n pull: 0,\n push: 0,\n offset: 0,\n queryType: 'advanced',\n },\n {\n type: 'select',\n label: '是否修改所有组织',\n disabled: false,\n allowClear: true,\n mode: 'default',\n placeholder: '请选择是否修改所有组织',\n show_search: false,\n valueKey: 'value',\n labelKey: 'name',\n name: 'all_org',\n key: '0fe11e5b2a4a9c5a7d8a109580788c1d',\n span: 24,\n pull: 0,\n push: 0,\n offset: 0,\n queryType: 'advanced',\n },\n {\n type: 'remoteselectpro',\n label: '目标组织',\n disabled: false,\n allowClear: true,\n valueKey: 'id',\n labelKeyType: 1,\n labelKey: 'name',\n labelKeyList: [],\n labelSpace: '-',\n mode: 'multiple',\n placeholder: '',\n show_search: true,\n datasourceType: 'remote',\n queryType: 'advanced',\n searchConditions: [\n [\n {\n searchType: 3,\n field_name: 'is_active',\n operator: 'eq',\n value: [true],\n format: 'choices',\n class_name: 'bool',\n },\n ],\n ],\n simpleSearchConditions: [\n {\n searchType: 3,\n field_name: 'is_active',\n value: true,\n },\n ],\n postUrl: '/org/query_organization_list',\n name: 'org_ids',\n key: '7eae36ea0f07278138ce815838c6a10c',\n span: 24,\n pull: 0,\n push: 0,\n offset: 0,\n conditions: [\n [\n {\n watchKey: 'all_org',\n class_name: 'bool',\n operator: 'eq',\n value: [false],\n },\n ],\n ],\n table: {\n enable: true,\n columns: [\n {\n title: '名称',\n dataIndex: 'name',\n cellComponent: null,\n sorter: {\n multiple: 1,\n },\n autoHeight: false,\n autoWidth: true,\n width: 150,\n resizable: true,\n ellipsis: true,\n },\n {\n title: '创建时间',\n dataIndex: 'create_time',\n cellComponent: 'datetime',\n autoHeight: false,\n autoWidth: false,\n width: 150,\n resizable: true,\n ellipsis: true,\n },\n {\n title: '更新时间',\n dataIndex: 'update_time',\n cellComponent: 'datetime',\n autoHeight: false,\n autoWidth: false,\n width: 150,\n resizable: true,\n ellipsis: true,\n },\n ],\n search_config: [\n {\n field_name: 'name',\n label: '名称',\n required_condition: null,\n allowClear: true,\n placeholder: '请输入名称',\n format: 'input',\n operator_list: [\n 'eq',\n 'contains',\n 'startswith',\n 'endswith',\n 'not_eq',\n 'is_or_not_blank_or_null',\n 'icontains',\n 'istartswith',\n 'iendswith',\n 'notcontains',\n 'notstartswith',\n 'notendswith',\n 'noticontains',\n 'notistartswith',\n 'notiendswith',\n ],\n default_operator: 'icontains',\n class_name: 'str',\n inputType: 'text',\n autocomplete: 'off',\n type: 'input',\n },\n ],\n },\n },\n ],\n },\n ],\n model: {\n name: null,\n all_org: true,\n org_ids: null,\n },\n rules: {},\n options: {\n all_org: [\n {\n value: true,\n valueType: 'bool',\n name: '是',\n },\n {\n value: false,\n valueType: 'bool',\n name: '否',\n },\n ],\n select_62516: [\n {\n valueType: 'int',\n value: 1,\n name: '选项1',\n },\n {\n valueType: 'int',\n value: 2,\n name: '选项2',\n },\n {\n valueType: 'int',\n value: 3,\n name: '选项3',\n },\n ],\n },\n },\n },\n order: 3,\n authority: 'permission/batch_rename_role',\n },\n];\n\nexport const head_btn_list: HeadBtnListConfig = [\n {\n name: '导出权限',\n clazz: 'primary',\n model_kind: 'custom_component',\n model_config: {\n component: 'ExportRole',\n },\n },\n {\n name: '导入权限',\n clazz: 'primary',\n model_kind: 'custom_component',\n model_config: {\n component: 'ImportRole',\n },\n },\n {\n name: '同步角色',\n model_kind: 'custom_component',\n type: 'dropdown',\n clazz: 'primary',\n model_config: {\n title: '同步角色',\n component: 'SyncRole',\n },\n authority: 'permission/sync_role',\n },\n];\n","import type { BtnListConfig, HeadBtnListConfig } from 'liyu-pc-base/api/typing';\nexport const btn_list: BtnListConfig = [];\nexport const config = {\n creatCol: [],\n updateCol: [],\n};\n\nexport const head_btn_list: HeadBtnListConfig = [];\n","import type { TableColumn } from 'liyu-pc-base/typing';\nimport type { Record, SearchConfig } from 'liyu-pc-base/components/remotePages/typing';\nimport { btn_list, head_btn_list } from './permission-role-config';\nimport { event_obj } from 'liyu-pc-base/init-plugin';\n\nexport default () => {\n const titleList = {\n title: '权限管理',\n addModalTitle: '新建角色',\n updateTitle: '修改',\n is_create: 'permission/create_role', // userStore.CHECK_AUTH(CREATE_ROLE), // 是否有【新建】按钮\n is_update: 'permission/update_role', // userStore.CHECK_AUTH(UPDATE_ROLE), // 是否有【修改】按钮\n is_remove: 'permission/delete_role', // userStore.CHECK_AUTH(DELETE_ROLE), // 是否有【删除】按钮\n is_recover: 'permission/recover_role', // userStore.CHECK_AUTH(RECOVER_ROLE), // 是否有【恢复】按钮\n };\n\n const api_fields: Record = {\n update: {\n role_id: 'id',\n },\n delete: {\n role_id: 'id',\n },\n recover: {\n role_id: 'id',\n },\n updateData: {\n org_id: 'org_id',\n role_id: 'id',\n },\n };\n\n return {\n addData: '/permission/create_role',\n updateData: '/permission/update_role',\n removeData: '/permission/delete_role',\n recoverData: '/permission/recover_role',\n titleList,\n api_fields,\n btn_list,\n head_btn_list,\n event_obj: event_obj(),\n queryConditionGroupData: null,\n is_selection: true,\n };\n};\n","import { addPerson, resetPassword, updatePerson } from 'liyu-pc-base/api/permission/user-manage';\nimport modalBox from 'liyu-pc-base/components/form-modal/modal-tools';\nimport { createVNode, reactive } from 'vue';\nimport { message, Modal } from 'ant-design-vue';\nimport { event_obj } from 'liyu-pc-base/init-plugin';\nimport type { BtnListConfig, HeadBtnListConfig } from 'liyu-pc-base/api/typing';\nimport { ExclamationCircleOutlined } from '@ant-design/icons-vue';\n\nexport const btn_list: BtnListConfig = [\n {\n name: '修改',\n type: 'dropdown',\n clazz: 'primary',\n cb: ({ record }) => {\n const editModal = reactive({\n visible: true,\n title: '修改',\n loading: false,\n form: {\n settings: {\n labelAlign: 'right',\n layout: 'horizontal',\n col: [],\n },\n fields: [\n {\n type: 'remoteselect',\n name: 'aim_org_id',\n label: '隶属组织',\n disabled: true,\n allowClear: true,\n labelKey: 'name',\n valueKey: 'id',\n placeholder: '请选择隶属组织',\n datasourceType: 'remote',\n mode: 'default',\n default: true,\n modalType: 'select-org-id',\n },\n {\n type: 'input',\n name: 'username',\n label: '手机号',\n disabled: false,\n allowClear: true,\n inputType: 'number',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填手机号',\n },\n {\n type: 'input',\n name: 'realname',\n label: '姓名',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填姓名',\n },\n {\n type: 'select',\n name: 'manage_type',\n label: '用户类型',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填姓名',\n },\n {\n type: 'remoteselect',\n name: 'role_ids',\n label: '角色',\n disabled: false,\n placeholder: '请选择角色',\n datasourceType: 'remote',\n mode: 'multiple',\n allowClear: true,\n modalType: 'liyu_permission-role',\n },\n ],\n rules: {},\n model: reactive({\n aim_org_id: record.org_id,\n person_id: record.id,\n username: record.user__username,\n realname: record.realname,\n title: record.title,\n manage_type: record.manage_type,\n email: record.email,\n role_ids: record.role_list?.map((item: any) => item.id),\n // group_ids: group_ids,\n }),\n },\n options: {\n manage_type: [\n { label: '普通用户', value: 0 },\n { label: '管理员', value: 1 },\n { label: '超级管理员', value: 2 },\n ],\n },\n ok: (payload: any) => {\n return new Promise(resolve => {\n editModal.loading = true;\n updatePerson({\n ...payload,\n })\n .then((res: any) => {\n message.success('修改成功');\n Object.assign(record, res);\n event_obj().emit('refresh');\n resolve(null);\n })\n .finally(() => {\n editModal.loading = false;\n });\n });\n },\n });\n modalBox(editModal);\n },\n },\n {\n name: '重置密码',\n clazz: 'primary',\n cb: ({ record }) => {\n Modal.confirm({\n title: '温馨提示',\n content: '是否重置 [' + record.realname + '] 的密码?',\n icon: () => createVNode(ExclamationCircleOutlined),\n okText: '确定',\n onOk() {\n return new Promise(resolve => {\n resetPassword({\n org_id: record.org_id,\n username: record.user__username,\n })\n .then(() => {\n message.success('重置密码成功');\n })\n .finally(() => {\n resolve(null);\n });\n }).catch(() => console.log('Oops errors!'));\n },\n onCancel() {\n },\n });\n },\n },\n];\nexport const config = {\n creatCol: [],\n updateCol: [],\n};\n\nexport const head_btn_list: HeadBtnListConfig = [\n {\n name: '新建用户',\n type: 'dropdown',\n is_show: true,\n clazz: 'primary',\n cb: ({ searchModel }) => {\n const editModal = reactive({\n visible: true,\n title: '新建用户',\n loading: false,\n form: {\n settings: {\n labelAlign: 'right',\n layout: 'horizontal',\n col: [],\n },\n fields: [\n {\n type: 'remoteselect',\n name: 'aim_org_id',\n label: '隶属组织',\n disabled: true,\n allowClear: true,\n labelKey: 'name',\n valueKey: 'id',\n placeholder: '请选择隶属组织',\n datasourceType: 'remote',\n mode: 'default',\n default: true,\n modalType: 'select-org-id',\n },\n {\n type: 'input',\n name: 'username',\n label: '手机号',\n disabled: false,\n allowClear: true,\n inputType: 'number',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填手机号',\n },\n {\n type: 'input',\n name: 'realname',\n label: '姓名',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填姓名',\n },\n {\n type: 'select',\n name: 'manage_type',\n label: '用户类型',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填姓名',\n },\n {\n type: 'remoteselect',\n name: 'role_ids',\n label: '角色',\n disabled: false,\n placeholder: '请选择角色',\n datasourceType: 'remote',\n mode: 'multiple',\n allowClear: true,\n modalType: 'liyu_permission-role',\n },\n ],\n rules: {},\n model: reactive({\n aim_org_id: searchModel.aim_org_id,\n person_id: null,\n username: null,\n realname: null,\n manage_type: 1,\n role_ids: [],\n }),\n },\n options: {\n manage_type: [\n { label: '普通用户', value: 0 },\n { label: '管理员', value: 1 },\n { label: '超级管理员', value: 2 },\n ],\n },\n ok: (payload: any) => {\n return new Promise(resolve => {\n editModal.loading = true;\n addPerson({\n ...payload,\n })\n .then((res: any) => {\n message.success('修改成功');\n event_obj().emit('refresh');\n resolve(null);\n })\n .finally(() => {\n editModal.loading = false;\n });\n });\n },\n });\n modalBox(editModal);\n },\n },\n];\n","import { TableColumn } from 'liyu-pc-base/typing';\nimport { Record, SearchConfig } from 'liyu-pc-base/components/remotePages/typing';\nimport { btn_list, config, head_btn_list } from './permission-user-config';\nimport { event_obj } from 'liyu-pc-base/init-plugin';\nimport { reactive } from 'vue';\nimport { useUserStore } from 'liyu-pc-base/init-plugin';\n\nexport default () => {\n const userStore = useUserStore();\n const current_org = userStore.currentOrg; // 当前组织org\n\n const search_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'inline',\n },\n fields: [\n {\n type: 'remoteselect',\n name: 'aim_org_id',\n label: '目标组织',\n disabled: false,\n placeholder: '请选择目标组织',\n datasourceType: 'remote',\n mode: 'default',\n allowClear: true,\n labelKey: 'name',\n valueKey: 'id',\n modalType: 'sys-query_org_for_login_list',\n },\n {\n type: 'input',\n name: 'name',\n label: '名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写用户名称',\n },\n {\n type: 'select',\n name: 'manage_type',\n label: '用户类型',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填姓名',\n },\n ],\n rules: {},\n model: reactive({\n org_id: current_org.id,\n aim_org_id: current_org.id,\n is_active: true,\n name: '',\n manage_type: null,\n get_role: true,\n }),\n options: {\n manage_type: [\n { label: '普通用户', value: 0 },\n { label: '管理员', value: 1 },\n { label: '超级管理员', value: 2 },\n ],\n },\n };\n\n const edit_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'horizontal',\n col: config.creatCol,\n },\n fields: [\n {\n type: 'remoteselect',\n name: 'aim_org_id',\n label: '隶属组织',\n disabled: false,\n allowClear: true,\n labelKey: 'name',\n valueKey: 'id',\n placeholder: '请选择隶属组织',\n datasourceType: 'remote',\n mode: 'default',\n default: true,\n modalType: 'select-org-id',\n },\n {\n type: 'input',\n name: 'username',\n label: '手机号',\n disabled: false,\n allowClear: true,\n inputType: 'number',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填手机号',\n },\n {\n type: 'input',\n name: 'realname',\n label: '姓名',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填姓名',\n },\n {\n type: 'select',\n name: 'manage_type',\n label: '用户类型',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填姓名',\n },\n {\n type: 'remoteselect',\n name: 'role_ids',\n label: '角色',\n disabled: false,\n placeholder: '请选择角色',\n datasourceType: 'remote',\n mode: 'multiple',\n allowClear: true,\n modalType: 'liyu_permission-role',\n },\n ],\n rules: {\n username: [{ required: true, pattern: /^1[123456789]\\d{9}$/, message: '请输入正确手机号' }],\n realname: [{ required: true, message: '请输入姓名' }],\n },\n model: {\n org_id: current_org?.id,\n id: null,\n username: '',\n realname: '',\n manage_type: 1,\n aim_org_id: current_org?.id,\n },\n options: {\n manage_type: [\n { label: '普通用户', value: 0 },\n { label: '管理员', value: 1 },\n { label: '超级管理员', value: 2 },\n ],\n },\n };\n\n const update_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'horizontal',\n col: config.creatCol,\n },\n fields: [],\n rules: {},\n model: reactive({\n org_id: current_org.id,\n id: null,\n username: '',\n realname: '',\n title: '',\n aim_org_id: '',\n email: '',\n }),\n options: {},\n };\n\n const titleList = {\n title: '用户管理',\n addModalTitle: '新建用户',\n updateTitle: '修改',\n is_create: false, // 是否有【新建】按钮\n is_update: false, // 是否有【修改】按钮\n is_remove: true, // 是否有【删除】按钮\n is_recover: false, // 是否有【恢复】按钮\n };\n\n const api_fields: Record = {\n update: {\n aim_org_id: 'org_id',\n person_id: 'id',\n },\n delete: {\n person_id: 'id',\n },\n recover: {\n person_id: 'id',\n },\n updateData: {\n org_id: 'org_id',\n person_id: 'id',\n },\n };\n\n const baseColumns: TableColumn[] = [\n {\n title: '序号',\n width: 50,\n dataIndex: 'index',\n checked: true,\n fixed: 'left',\n },\n {\n title: '名称',\n width: 150,\n dataIndex: 'realname',\n checked: true,\n fixed: 'left',\n },\n {\n title: '用户类型',\n width: 120,\n dataIndex: 'manage_type',\n checked: true,\n cellComponent: 'tag',\n contentMap: {\n 0: '普通用户',\n 1: '管理员',\n 2: '超级管理员',\n },\n colorMap: {\n 0: '',\n 2: 'cyan',\n },\n },\n {\n title: '手机号',\n width: 130,\n checked: true,\n dataIndex: 'user__username',\n },\n {\n title: '角色',\n minWidth: 200,\n checked: true,\n dataIndex: 'role_list',\n cellComponent: 'list',\n },\n // {\n // title: '电子邮箱',\n // width: 150,\n // dataIndex: 'email',\n // },\n // {\n // title: '微信',\n // width: 80,\n // dataIndex: 'user__lyuserinfo__wechat_username',\n // cellComponent: 'tag',\n // color: (record: any, text: any) => {\n // return text ? 'green' : 'red';\n // },\n // content: (record: any, text: any) => {\n // return text ? '已绑定' : '未绑定';\n // },\n // },\n // {\n // title: '隶属部门',\n // minWidth: 200,\n // dataIndex: 'group_list',\n // cellComponent: 'list',\n // },\n // {\n // title: '职务',\n // width: 150,\n // dataIndex: 'title',\n // },\n {\n title: '是否可用',\n width: 100,\n dataIndex: 'is_active',\n checked: true,\n resizable: true,\n cellComponent: 'boolean',\n name1: '可用',\n name2: '禁用',\n filterMultiple: false,\n filters: [\n { text: '全部', value: '' },\n { text: '可用', value: 'true' },\n { text: '禁用', value: 'false' },\n ],\n },\n {\n title: '操作',\n width: 50,\n checked: true,\n dataIndex: 'action',\n cellComponent: 'action',\n fixed: 'right',\n },\n ];\n\n return {\n searchConfig: search_config,\n formModalConfig: edit_model_config,\n updateFormModalConfig: update_model_config,\n queryData: '/sys/query_person_detail_list',\n addData: '/sys/create_user',\n updateData: '/sys/update_user',\n removeData: '/sys/delete_user',\n recoverData: '/sys/recover_user',\n baseColumns: baseColumns,\n titleList: titleList,\n api_fields: api_fields,\n btn_list: btn_list,\n head_btn_list: head_btn_list,\n event_obj: event_obj(),\n base_search_condition_config_list: [],\n default_search_condition_config_list: [[]],\n condition_group_config_list: [],\n is_show_advantage: false,\n is_show_normal_search: true,\n is_only_show_advantage: false,\n is_only_show_normal_search: true,\n queryConditionGroupData: null,\n isView: false,\n };\n};\n","import {\n queryRole,\n addRole,\n updateRole,\n removeRole,\n recoverRole,\n} from 'liyu-pc-base/api/permission/role-manage';\nimport type { TableColumn } from 'liyu-pc-base/typing';\nimport type { SearchConfig, Record } from 'liyu-pc-base/components/remotePages/typing';\nimport { useUserStore } from 'liyu-pc-base/init-plugin';\nimport { btn_list, head_btn_list, config } from './permission-role-manage-config';\nimport { event_obj } from 'liyu-pc-base/init-plugin';\nimport { reactive } from 'vue';\n\nexport default () => {\n const userStore = useUserStore();\n const current_org = userStore.currentOrg; // 当前组织org\n const search_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'inline',\n },\n fields: [\n {\n type: 'remoteselect',\n name: 'aim_org_id',\n label: '目标组织',\n disabled: false,\n placeholder: '请选择目标组织',\n datasourceType: 'remote',\n mode: 'default',\n allowClear: true,\n labelKey: 'name',\n valueKey: 'id',\n modalType: 'sys-query_org_for_login_list',\n },\n {\n type: 'input',\n name: 'name',\n label: '角色名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写角色名称',\n },\n {\n type: 'radio',\n name: 'is_active',\n label: '状态',\n mode: 'default',\n disabled: false,\n defaultValue: '',\n labelKey: 'name',\n valueKey: 'value',\n placeholder: '请选择状态',\n datasource: 'is_active',\n },\n ],\n rules: {},\n model: reactive({\n org_id: current_org.id,\n aim_org_id: current_org.id,\n is_active: true,\n name: '',\n }),\n };\n const search_options = {\n is_active: [\n { name: '全部', value: '' },\n { name: '正常', value: true },\n { name: '作废', value: false },\n ],\n };\n\n const edit_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: config.creatCol,\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '角色名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写角色名称',\n },\n {\n type: 'input',\n name: 'flag',\n label: '角色标识',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写角色标识',\n },\n {\n type: 'textarea',\n name: 'desc',\n label: '角色描述',\n disabled: false,\n allowClear: true,\n defaultValue: '',\n placeholder: '请填写角色描述',\n },\n ],\n rules: {\n name: [{ required: true, message: '角色名称必须填写' }],\n },\n model: {\n org_id: current_org.id,\n aim_org_id: current_org.id,\n id: null,\n name: '',\n desc: '',\n },\n };\n const edit_model_config_options = {};\n\n const update_model_config: SearchConfig = {\n settings: {\n labelAlign: 'right',\n layout: 'vertical',\n col: config.creatCol,\n },\n fields: [\n {\n type: 'input',\n name: 'name',\n label: '角色名称',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写角色名称',\n },\n {\n type: 'input',\n name: 'flag',\n label: '角色标识',\n disabled: false,\n allowClear: true,\n inputType: 'text',\n maxlength: 100,\n defaultValue: '',\n placeholder: '请填写角色标识',\n },\n {\n type: 'textarea',\n name: 'desc',\n label: '角色描述',\n disabled: false,\n allowClear: true,\n defaultValue: '',\n placeholder: '请填写角色描述',\n },\n ],\n rules: {},\n model: {\n org_id: current_org.id,\n aim_org_id: current_org.id,\n id: null,\n name: '',\n desc: '',\n },\n };\n const update_model_config_options = {};\n\n const titleList = {\n title: '角色管理',\n addModalTitle: '新建角色',\n updateTitle: '修改',\n is_create: true, // 是否有【新建】按钮\n is_update: true, // 是否有【修改】按钮\n is_remove: true, // 是否有【删除】按钮\n is_recover: true, // 是否有【恢复】按钮\n };\n\n const api_fields: Record = {\n update: {\n role_id: 'id',\n },\n delete: {\n role_id: 'id',\n },\n recover: {\n role_id: 'id',\n },\n updateData: {\n org_id: 'org_id',\n role_id: 'id',\n },\n };\n\n const baseColumns: TableColumn[] = [\n {\n title: '序号',\n width: 50,\n dataIndex: 'index',\n checked: true,\n fixed: 'left',\n },\n {\n title: '名称',\n width: 150,\n dataIndex: 'name',\n checked: true,\n fixed: 'left',\n },\n {\n title: '描述',\n dataIndex: 'desc',\n checked: true,\n },\n {\n title: '角色标识',\n width: 180,\n dataIndex: 'flag',\n checked: true,\n },\n {\n title: '是否可用',\n width: 100,\n dataIndex: 'is_active',\n checked: true,\n resizable: true,\n cellComponent: 'boolean',\n name1: '可用',\n name2: '禁用',\n filterMultiple: false,\n filters: [\n { text: '全部', value: '' },\n { text: '可用', value: 'true' },\n { text: '禁用', value: 'false' },\n ],\n },\n {\n title: '操作',\n width: 50,\n dataIndex: 'action',\n checked: true,\n cellComponent: 'action',\n },\n ];\n\n return {\n searchConfig: search_config,\n searchConfigOptions: search_options,\n formModalConfig: edit_model_config,\n formModalConfigOptions: edit_model_config_options,\n updateFormModalConfig: update_model_config,\n updateFormModalConfigOptions: update_model_config_options,\n queryData: queryRole,\n addData: addRole,\n updateData: updateRole,\n removeData: removeRole,\n recoverData: recoverRole,\n baseColumns: baseColumns,\n titleList: titleList,\n api_fields: api_fields,\n btn_list: btn_list,\n head_btn_list: head_btn_list,\n event_obj: event_obj(),\n base_search_condition_config_list: [],\n default_search_condition_config_list: [[]],\n condition_group_config_list: [],\n is_show_advantage: false,\n is_show_normal_search: true,\n is_only_show_advantage: false,\n is_only_show_normal_search: true,\n queryConditionGroupData: null,\n isView: false,\n };\n};\n","import { useEnv } from 'liyu-pc-base/init-plugin';\nimport cloneDeep from 'lodash-es/cloneDeep';\nimport md5 from 'blueimp-md5';\nimport type { PageConfig } from 'liyu-pc-base/components/remotePages/typing';\n\nexport function generateMD5(str: string): string {\n return md5(str);\n}\n\nconst getI18nId = (modalType: string): string => {\n // 取md5末尾3位\n return generateMD5(modalType).slice(-3);\n};\n\nconst modifyBaseColumns = (\n data: any,\n t: any,\n i18n_id: string,\n get_field_i18n_id: (field: string) => Promise<string>,\n) => {\n if (!data || !Array.isArray(data)) {\n return data;\n }\n data.forEach((item: any) => {\n if (item.title) {\n item.title = t(`${i18n_id}_${item.title}`, {\n defaultValue: item.title,\n });\n }\n if (item.contentMap) {\n Object.keys(item.contentMap).forEach((key: string) => {\n item.contentMap[key] = t(\n `${i18n_id}_${get_field_i18n_id(item.dataIndex)}_${item.contentMap[key]}`,\n {\n defaultValue: item.contentMap[key],\n },\n );\n });\n }\n if (item.filters) {\n item.filters.forEach((filter: any) => {\n if (filter.text) {\n filter.text = t(`${i18n_id}_${get_field_i18n_id(item.dataIndex)}_${filter.text}`, {\n defaultValue: filter.text,\n });\n }\n });\n }\n });\n return data;\n};\n\nconst modifySearchConfig = (\n data: any,\n t: any,\n i18n_id: string,\n get_field_i18n_id: (field: string) => string,\n) => {\n if (data?.fields && Array.isArray(data.fields)) {\n data.fields.forEach((item: any) => {\n if (item.label) {\n item.label = t(`${i18n_id}_${item.label}`, {\n defaultValue: item.label,\n });\n }\n if (Array.isArray(item.placeholder)) {\n item.placeholder = item.placeholder.map((placeholder: string) =>\n t(`${i18n_id}_${placeholder}`, {\n defaultValue: placeholder,\n }),\n );\n } else if (item.placeholder) {\n item.placeholder = t(`${i18n_id}_${item.placeholder}`, {\n defaultValue: item.placeholder,\n });\n }\n });\n }\n if (data?.options) {\n for (const key in data.options) {\n data.options[key].forEach((item: any) => {\n if (item.name) {\n item.name = t(`${i18n_id}_${get_field_i18n_id(key)}_${item.name}`, {\n defaultValue: item.name,\n });\n }\n if (item.label) {\n item.label = t(`${i18n_id}_${get_field_i18n_id(key)}_${item.label}`, {\n defaultValue: item.label,\n });\n }\n });\n }\n }\n const rules = data?.rules;\n if (rules) {\n Object.keys(rules).forEach((key: string) => {\n rules[key].forEach((rule: any) => {\n if (rule.message) {\n rule.message = t(`${i18n_id}_${rule.message}`, {\n defaultValue: rule.message,\n });\n }\n });\n });\n }\n return data;\n};\n\nconst modifyBaseSearchConditionConfigList = (\n data: any,\n t: any,\n i18n_id: string,\n get_field_i18n_id: (field: string) => string,\n) => {\n if (data && Array.isArray(data)) {\n data.forEach((item: any) => {\n if (item.name) {\n item.name = t(`${i18n_id}_${item.name}`, {\n defaultValue: item.name,\n });\n }\n const group = item.group;\n if (group && Array.isArray(group)) {\n group.forEach((groupItem: any) => {\n if (groupItem.label) {\n groupItem.label = t(`${i18n_id}_${groupItem.label}`, {\n defaultValue: groupItem.label,\n });\n }\n if (groupItem.options) {\n groupItem.options.forEach((option: any) => {\n if (option.label) {\n option.label = t(\n `${i18n_id}_${get_field_i18n_id(groupItem.field_name)}_${option.label}`,\n {\n defaultValue: option.label,\n },\n );\n }\n });\n }\n });\n }\n });\n }\n return data;\n};\n\nconst modifyDefaultSearchConditionConfigList = (\n data: any,\n t: any,\n i18n_id: string,\n get_field_i18n_id: (field: string) => string,\n) => {\n if (data && Array.isArray(data)) {\n data.forEach((item: any) => {\n if (item && Array.isArray(item)) {\n item.forEach((field: any) => {\n if (field.label) {\n field.label = t(`${i18n_id}_${field.label}`, {\n defaultValue: field.label,\n });\n }\n });\n }\n });\n }\n return data;\n};\n\nconst modifyConditionGroupConfigList = (\n data: any,\n t: any,\n i18n_id: string,\n get_field_i18n_id: (field: string) => string,\n) => {\n if (data && Array.isArray(data)) {\n data.forEach((item: any) => {\n if (item.label) {\n item.label = t(`${i18n_id}_${item.label}`, {\n defaultValue: item.label,\n });\n }\n });\n }\n return data;\n};\n\nconst modifyFormModalConfig = (\n data: any,\n t: any,\n i18n_id: string,\n get_field_i18n_id: (field: string) => string,\n) => {\n const dynamicFieldList = data?.dynamicFieldList;\n if (dynamicFieldList && Array.isArray(dynamicFieldList)) {\n dynamicFieldList.forEach((item: any) => {\n if (item.group_name) {\n item.group_name = t(`${i18n_id}_${item.group_name}`, {\n defaultValue: item.group_name,\n });\n }\n const children = item.children;\n if (children && Array.isArray(children)) {\n children.forEach((child: any) => {\n if (child.label) {\n child.label = t(`${i18n_id}_${child.label}`, {\n defaultValue: child.label,\n });\n }\n const placeholder = child.placeholder;\n if (placeholder && Array.isArray(placeholder)) {\n child.placeholder = placeholder.map((placeholder: string) =>\n t(`${i18n_id}_${placeholder}`, {\n defaultValue: placeholder,\n }),\n );\n } else if (placeholder) {\n child.placeholder = t(`${i18n_id}_${placeholder}`, {\n defaultValue: placeholder,\n });\n }\n });\n }\n });\n }\n const rules = data?.rules;\n if (rules) {\n Object.keys(rules).forEach((key: string) => {\n rules[key].forEach((rule: any) => {\n if (rule.message) {\n rule.message = t(`${i18n_id}_${rule.message}`, {\n defaultValue: rule.message,\n });\n }\n });\n });\n }\n const options = data?.options;\n if (options) {\n Object.keys(options).forEach((key: string) => {\n options[key].forEach((item: any) => {\n if (item.name) {\n item.name = t(`${i18n_id}_${get_field_i18n_id(key)}_${item.name}`, {\n defaultValue: item.name,\n });\n }\n if (item.label) {\n item.label = t(`${i18n_id}_${get_field_i18n_id(key)}_${item.label}`, {\n defaultValue: item.label,\n });\n }\n });\n });\n }\n return data;\n};\n\nconst modifyTitleList = (\n data: any,\n t: any,\n i18n_id: string,\n get_field_i18n_id: (field: string) => string,\n): any => {\n if (data?.title) {\n data.title = t(`${i18n_id}_${data.title}`, {\n defaultValue: data.title,\n });\n }\n if (data?.addModalTitle) {\n data.addModalTitle = t(`${i18n_id}_${data.addModalTitle}`, {\n defaultValue: data.addModalTitle,\n });\n }\n if (data?.updateTitle) {\n data.updateTitle = t(`${i18n_id}_${data.updateTitle}`, {\n defaultValue: data.updateTitle,\n });\n }\n\n return data;\n};\n\nconst modifyBtnList = (\n data: any,\n t: any,\n i18n_id: string,\n get_field_i18n_id: (field: string) => string,\n): any => {\n if (data && Array.isArray(data)) {\n data.forEach((item: any) => {\n if (item.name) {\n item.name = t(`${i18n_id}_${item.name}`, {\n defaultValue: item.name,\n });\n }\n const model_config = item.model_config;\n if (model_config) {\n if (model_config.title) {\n model_config.title = t(`${i18n_id}_${model_config.title}`, {\n defaultValue: model_config.title,\n });\n }\n if (model_config.content) {\n model_config.content = t(`${i18n_id}_${model_config.content}`, {\n defaultValue: model_config.content,\n });\n }\n if (model_config.form) {\n model_config.form = modifyFormModalConfig(\n model_config.form,\n t,\n i18n_id,\n get_field_i18n_id,\n );\n }\n }\n });\n }\n return data;\n};\n\n// 配置修改函数\nconst modifyFunc = {\n baseColumns: modifyBaseColumns,\n searchConfig: modifySearchConfig,\n base_search_condition_config_list: modifyBaseSearchConditionConfigList,\n default_search_condition_config_list: modifyDefaultSearchConditionConfigList,\n condition_group_config_list: modifyConditionGroupConfigList,\n formModalConfig: modifyFormModalConfig,\n updateFormModalConfig: modifyFormModalConfig,\n titleList: modifyTitleList,\n btn_list: modifyBtnList,\n head_btn_list: modifyBtnList,\n batch_update_list: modifyBtnList,\n};\n\nexport const modify_by_i18n_config = (mergedConfig: any, t: any, modalType: string): PageConfig => {\n const env = useEnv();\n if (!env.VITE_APP_ENABLE_ZH_EN) {\n return mergedConfig;\n }\n\n const result = cloneDeep(mergedConfig);\n const i18n_config = result.i18n;\n Object.keys(result).forEach(key => {\n if (modifyFunc[key]) {\n let i18n_id = i18n_config?.i18n_id;\n let fields = i18n_config?.fields;\n if (!i18n_id) {\n i18n_id = getI18nId(modalType);\n }\n const get_field_i18n_id = (field: string) => {\n if (fields) {\n const field_i18n_id = fields[field]?.i18n_id;\n if (field_i18n_id) {\n return field_i18n_id;\n }\n }\n return getI18nId(field);\n };\n result[key] = modifyFunc[key](result[key], t, i18n_id, get_field_i18n_id);\n }\n });\n console.log('result====', result);\n return result;\n};\n","import type { PageConfig } from 'liyu-pc-base/components/remotePages/typing';\nimport { reactive } from 'vue';\nimport { getApiPermission, getUrl } from 'liyu-pc-base/components/remotePages/utils';\nimport { cloneDeep } from 'lodash';\nimport { usePageConfigStore } from 'liyu-pc-base/init-plugin';\nimport { getApiData } from 'liyu-pc-base/api/api-model';\nimport { useEnv } from 'liyu-pc-base/init-plugin';\nimport { useGlobMap } from 'liyu-pc-base/init-plugin';\nimport { useCellComponentMap, useCellFormatExcelValueMap } from 'liyu-pc-base/init-plugin';\nimport { modify_by_i18n_config } from './i18n_config';\n\nconst mergeBtnList = (config: any[], customConfig: any[]) => {\n if (!customConfig) return config;\n const result = cloneDeep(config || []);\n\n // 创建一个按钮名称到索引的映射\n const btnMap = new Map();\n result.forEach((btn, index) => {\n delete btn._key;\n btnMap.set(btn.name, index);\n });\n\n // 遍历自定义配置进行合并\n let last_order = 0;\n customConfig.forEach(customBtn => {\n if (!customBtn.order) {\n customBtn.order = last_order + 1;\n }\n last_order = customBtn.order;\n customBtn._key = `custom_${customBtn.name}_${Math.random()}`;\n const existingIndex = btnMap.get(customBtn.name);\n\n if (existingIndex !== undefined) {\n // 如果按钮已存在,递归合并子按钮\n const existingBtn = result[existingIndex];\n if (customBtn.children && existingBtn.children) {\n existingBtn.children = mergeBtnList(existingBtn.children, customBtn.children);\n }\n const temp = cloneDeep(customBtn);\n delete temp.children;\n // 合并其他属性\n Object.assign(existingBtn, temp);\n } else {\n const temp = cloneDeep(customBtn);\n result.push(temp);\n if (temp.children) {\n temp.children = mergeBtnList([], temp.children);\n }\n }\n });\n\n return result;\n};\n\nconst mergeDataFunc = {\n btn_list: mergeBtnList,\n head_btn_list: mergeBtnList,\n batch_update_list: mergeBtnList,\n};\n\nconst mergeData = (config: any, customConfig: any) => {\n const res = cloneDeep(config);\n // Object.assign(mergedData, customConfig);\n Object.keys(customConfig).forEach(key => {\n if (mergeDataFunc[key]) {\n res[key] = mergeDataFunc[key](config[key], customConfig[key]);\n } else {\n res[key] = customConfig[key];\n }\n });\n\n Object.assign(config, res);\n};\nconst overrideBaseColumns = (config: any, overrideConfig: any) => {\n if (!config) {\n return;\n }\n config.forEach(item => {\n const dataIndex = item.dataIndex;\n if (overrideConfig[dataIndex]) {\n for (const key in overrideConfig[dataIndex]) {\n if (overrideConfig[dataIndex][key] === null) {\n delete item[key];\n } else {\n item[key] = overrideConfig[dataIndex][key];\n }\n }\n }\n });\n return config;\n};\nconst overrideBaseSearchConditionConfigList = (config: any, overrideConfig: any) => {\n if (!config) {\n return;\n }\n config.forEach(item => {\n const group = item.group;\n if (!group) {\n return;\n }\n group.forEach(groupItem => {\n const field_name = groupItem.field_name;\n if (overrideConfig[field_name]) {\n for (const key in overrideConfig[field_name]) {\n if (overrideConfig[field_name][key] === null) {\n delete groupItem[key];\n } else {\n groupItem[key] = overrideConfig[field_name][key];\n }\n }\n }\n });\n });\n return config;\n};\nconst overrideSearchConfig = (config: any, overrideConfig: any) => {\n if (!config) {\n return;\n }\n const fields = config.fields;\n const rules = config.rules || {};\n const model = config.model || {};\n const options = config.options || {};\n if (!fields) {\n return;\n }\n fields.forEach(field => {\n const name = field.name;\n if (overrideConfig.fields?.[name]) {\n for (const key in overrideConfig.fields[name]) {\n if (overrideConfig.fields[name][key] === null) {\n delete field[key];\n } else {\n field[key] = overrideConfig.fields[name][key];\n }\n }\n }\n if (overrideConfig.rules?.[name] !== undefined) {\n rules[name] = overrideConfig.rules[name];\n }\n if (overrideConfig.model?.[name] !== undefined) {\n model[name] = overrideConfig.model[name];\n }\n if (overrideConfig.options?.[name] !== undefined) {\n options[name] = overrideConfig.options[name];\n }\n });\n const newConfig = {\n fields,\n rules,\n model,\n options,\n };\n Object.assign(config, newConfig);\n return config;\n};\nconst overrideDataFunc = {\n baseColumns: overrideBaseColumns,\n base_search_condition_config_list: overrideBaseSearchConditionConfigList,\n searchConfig: overrideSearchConfig,\n};\n\nconst overrideData = (config: any, overrideConfig: any) => {\n const res = cloneDeep(config);\n // Object.assign(mergedData, customConfig);\n Object.keys(overrideConfig).forEach(key => {\n if (overrideDataFunc[key]) {\n config[key] = overrideDataFunc[key](config[key], overrideConfig[key]);\n }\n });\n return res;\n};\nconst processBaseColumns = (config: any) => {\n if (!config || !Array.isArray(config)) {\n return config;\n }\n const cellComponentMap = useCellComponentMap();\n const cellFormatExcelValueMap = useCellFormatExcelValueMap();\n for (const item of config) {\n if (item.cellComponent && !item.formatExcelValue) {\n const cellComponentData = cellComponentMap[item.cellComponent];\n if (cellComponentData) {\n const defaultExcelFormat = cellComponentData.defaultExcelFormat;\n const cellFormatExcelValue = cellFormatExcelValueMap[defaultExcelFormat];\n if (cellFormatExcelValue) {\n item.formatExcelValue = cellFormatExcelValue.flag;\n }\n }\n }\n }\n return config;\n};\nconst processDataFunc = {\n baseColumns: processBaseColumns,\n};\n\nconst processData = (config: any) => {\n Object.keys(config).forEach(key => {\n if (processDataFunc[key]) {\n config[key] = processDataFunc[key](config[key]);\n }\n });\n};\nconst res_components: { [key: string]: any } = {};\nconst init_components = () => {\n if (Object.keys(res_components).length > 0) {\n return;\n }\n const allComponents = import.meta.glob('liyu-pc-base/components/remotePages/configs/*/*.ts', {\n eager: true,\n });\n const customComponents = useGlobMap('remotePages');\n Object.assign(allComponents, customComponents);\n Object.keys(allComponents).forEach(full_file_name => {\n const file_name_list = full_file_name.split('/');\n const file_name = file_name_list[file_name_list.length - 1].replace('.ts', '');\n\n if (file_name.endsWith('-config')) {\n return;\n }\n // @ts-ignore\n res_components[file_name] = allComponents[full_file_name].default;\n });\n};\nexport const getViewSettingsAndPageConfig = async ({\n org_id,\n user_id,\n app_flag,\n modalType,\n sort_fields,\n is_cache,\n history_id,\n}: {\n org_id: string;\n user_id: number;\n app_flag: string;\n modalType: string;\n sort_fields: string[];\n is_cache: boolean;\n history_id?: number | null;\n}) => {\n const env = useEnv();\n const [viewSettings, defaultAndServerConfig] = await Promise.all([\n getApiData(\n {\n org_id,\n user_id,\n view_project__flag: env.VITE_APP_VIEW_PROJECT_FLAG,\n view_menu__flag: modalType,\n history_id,\n sort_fields,\n is_cache,\n },\n '/view/get_view_settings_for_user',\n ),\n getDefaultAndServerConfig({\n org_id,\n app_flag,\n modalType,\n history_id,\n }),\n ]);\n\n return {\n ...viewSettings,\n defaultAndServerConfig: defaultAndServerConfig,\n };\n};\n\nexport const getDefaultAndServerConfig = async ({\n org_id,\n app_flag,\n modalType,\n history_id,\n}: {\n org_id: string;\n app_flag: string;\n modalType: string;\n history_id?: number | null;\n}) => {\n const env = useEnv();\n const model_name = modalType.split('-')[1];\n const flag = modalType + '_config';\n const serverConfigParams: any = {\n flag,\n org_id,\n };\n if (history_id) {\n serverConfigParams.history_id = history_id;\n }\n const defaultConfigParams: any = {\n org_id,\n model_name,\n get_i18n_config: !!env.VITE_APP_ENABLE_ZH_EN,\n };\n const overrideConfigParams: any = {\n org_id,\n model_name,\n api_url: `/${app_flag}/query_${model_name}_list`,\n };\n const result: any = {};\n const skip_app_flag = [];\n if (skip_app_flag.includes(app_flag)) {\n const serverRes = await getApiData(\n serverConfigParams,\n '/sys/get_global_custom_data_by_flag_without_org_id',\n );\n result.defaultConfig = {};\n result.override = null;\n result.serverConfig = serverRes || {};\n return result;\n } else {\n const [defaultRes, overrideRes, serverRes] = await Promise.all([\n getApiData(\n defaultConfigParams,\n `/${app_flag}/dev_get_column_config_and_remote_config_json`,\n false,\n {\n skip_error: true,\n },\n ),\n getApiData(overrideConfigParams, `/${app_flag}/override_column_config`, false, {\n skip_error: true,\n }),\n getApiData(serverConfigParams, '/sys/get_global_custom_data_by_flag_without_org_id'),\n ]);\n result.defaultConfig = defaultRes || {};\n result.override = overrideRes || {};\n result.serverConfig = serverRes || {};\n return result;\n }\n};\n\nexport const getPageConfig = (\n app_flag: string,\n modalType: string,\n defaultAndServerConfig: {\n defaultConfig: any;\n serverConfig: any;\n override?: any;\n },\n t: any,\n options?: {\n use_store?: Boolean;\n to_i18n?: Boolean;\n enable_btn?: Boolean;\n },\n): PageConfig => {\n const { use_store = true, to_i18n = false, enable_btn = false } = options || {};\n init_components();\n const pageConfigStore = use_store ? usePageConfigStore() : null;\n let components: any;\n if (pageConfigStore) {\n if (defaultAndServerConfig) {\n pageConfigStore.cleanPageConfig(modalType);\n } else {\n const cachedConfig = pageConfigStore.getCachedConfig(modalType);\n if (cachedConfig) {\n return cachedConfig;\n }\n }\n }\n if (res_components[modalType] == undefined) {\n console.log('remotePages3没有组件:' + modalType);\n if (pageConfigStore) {\n pageConfigStore.setCustomConfig(modalType, {});\n }\n } else {\n components = { ...res_components[modalType](t) };\n if (pageConfigStore) {\n pageConfigStore.setCustomConfig(modalType, components);\n }\n }\n const titleList: any = reactive({\n title: '',\n addModalTitle: '新建',\n updateTitle: '修改',\n is_create: getApiPermission(app_flag + '-' + modalType.split('-')[1], 'create_'), // 是否有【新建】按钮\n is_update: getApiPermission(app_flag + '-' + modalType.split('-')[1], 'update_'), // 是否有【修改】按钮\n is_remove: getApiPermission(app_flag + '-' + modalType.split('-')[1], 'delete_'), // 是否有【删除】按钮\n is_recover: getApiPermission(app_flag + '-' + modalType.split('-')[1], 'recover_'), // 是否有【恢复】按钮\n });\n const searchConfig: any = {\n rules: reactive({}),\n fields: [],\n settings: {},\n model: reactive({}),\n options: {},\n };\n const defaultConfig: any = {\n is_selection: false,\n addData: getUrl(app_flag + '-' + modalType.split('-')[1], ['create_', '']),\n updateData: getUrl(app_flag + '-' + modalType.split('-')[1], ['update_', '']),\n recoverData: getUrl(app_flag + '-' + modalType.split('-')[1], ['recover_', '']),\n removeData: getUrl(app_flag + '-' + modalType.split('-')[1], ['delete_', '']),\n countData: getUrl(app_flag + '-' + modalType.split('-')[1], ['query_', '_count']),\n queryData: getUrl(app_flag + '-' + modalType.split('-')[1], ['query_', '_list']),\n queryConditionGroupData: getUrl(app_flag + '-' + modalType.split('-')[1], ['query_', '_group']),\n getData: getUrl(app_flag + '-' + modalType.split('-')[1], ['get_', '']),\n\n searchConfig: searchConfig,\n base_search_condition_config_list: null,\n default_search_condition_config_list: null,\n condition_group_config_list: null,\n is_show_advantage: true,\n is_show_normal_search: false,\n is_only_show_advantage: true,\n is_only_show_normal_search: false,\n init_request: true,\n processData: null,\n refresh_type: '手动', // '手动', '5s', '10s', '30s'\n required_condition: [],\n globalSearch: null,\n\n formModalConfig: null,\n updateFormModalConfig: null,\n titleList: titleList,\n api_fields: null,\n btn_list: null,\n head_btn_list: null,\n batch_update_list: null,\n event_obj: undefined,\n\n is_operation: [true, true, true, true],\n baseColumns: null,\n column_list_change: null,\n processColumn: null,\n customCell: null,\n customRow: null,\n customHeaderCell: null,\n\n is_pagination: true,\n pageSize: 50,\n page_size_options: [\n '10',\n '20',\n '50',\n '100',\n '200',\n '500',\n '1000',\n '3000',\n '10000',\n '50000',\n '60000',\n '70000',\n ], // 默认页面选项\n is_page_mode_change: false,\n is_stripe: null,\n\n isView: true,\n default_hide_view: false,\n rowKey: 'id',\n rowSelection: { type: 'checkbax', checkStrictly: false },\n expandedRowRender: null,\n expandedRowRenderComponent: null,\n headerComponent: null,\n expandFunc: null,\n summaryData: null,\n summaryType: null,\n default_column_field: ['is_active'],\n i18n: null,\n get_db_alias: null,\n advanced_base_conditions: [],\n };\n if (defaultAndServerConfig) {\n Object.assign(defaultConfig, defaultAndServerConfig.defaultConfig);\n if (pageConfigStore) {\n pageConfigStore.setDefaultConfig(modalType, defaultConfig);\n }\n } else {\n const cachedDefaultConfig = pageConfigStore && pageConfigStore.getDefaultConfig(modalType);\n if (cachedDefaultConfig) {\n Object.assign(defaultConfig, cachedDefaultConfig);\n }\n }\n const mergedConfig = cloneDeep(defaultConfig);\n let serverConfig = null;\n if (defaultAndServerConfig) {\n serverConfig = defaultAndServerConfig.serverConfig;\n if (pageConfigStore) {\n pageConfigStore.setServerConfig(modalType, serverConfig);\n }\n } else {\n serverConfig = pageConfigStore && pageConfigStore.getServerConfig(modalType);\n }\n if (\n !serverConfig?.default_column_field &&\n serverConfig?.searchConfig?.default_column_field &&\n serverConfig?.searchConfig?.default_column_field?.length > 0\n ) {\n serverConfig.default_column_field = serverConfig.searchConfig.default_column_field;\n }\n if (!enable_btn && serverConfig) {\n delete serverConfig['btn_list'];\n delete serverConfig['head_btn_list'];\n delete serverConfig['batch_update_list'];\n }\n\n Object.assign(mergedConfig, serverConfig);\n let overrideConfig = null;\n if (defaultAndServerConfig) {\n overrideConfig = defaultAndServerConfig.override;\n if (pageConfigStore && overrideConfig) {\n pageConfigStore.setOverrideConfig(modalType, overrideConfig);\n }\n } else {\n overrideConfig = pageConfigStore && pageConfigStore.getOverrideConfig(modalType);\n }\n if (overrideConfig) {\n overrideData(mergedConfig, overrideConfig);\n }\n if (components) {\n mergeData(mergedConfig, components);\n if (components?.default_column_field && components?.default_column_field?.length > 0) {\n mergedConfig.default_column_field = components?.default_column_field;\n } else if (\n components?.searchConfig?.default_column_field &&\n components?.searchConfig?.default_column_field?.length > 0\n ) {\n mergedConfig.default_column_field = components?.searchConfig?.default_column_field;\n }\n }\n if (pageConfigStore) {\n pageConfigStore.setMergedConfig(modalType, mergedConfig);\n }\n if (mergedConfig.is_stripe) {\n const processData = raw_data_list => {\n let index = 0;\n const obj_dict = {};\n raw_data_list.forEach(item => {\n item.color_index0 = 1;\n if (obj_dict?.[item?.[mergedConfig.is_stripe]] == undefined) {\n obj_dict[item[mergedConfig.is_stripe]] = index;\n index += 1;\n item.color_index0 = 0;\n }\n item.color_index = obj_dict[item[mergedConfig.is_stripe]];\n });\n return raw_data_list;\n };\n\n const customRow = record => {\n if (record.color_index0 == 1) {\n return { style: { background: 'rgba(85,162,235,0.3)' } };\n }\n if (record.color_index % 2 == 0) {\n return { style: { background: '#FFFFFE' } };\n } else {\n return { style: { background: '#FAFAFA' } };\n }\n };\n mergedConfig.processData = processData;\n mergedConfig.customRow = customRow;\n }\n processData(mergedConfig);\n\n let result = mergedConfig;\n if (to_i18n) {\n result = modify_by_i18n_config(mergedConfig, t, modalType);\n }\n if (pageConfigStore) {\n pageConfigStore.setCachedConfig(modalType, result);\n }\n return result;\n};\n"],"x_google_ignoreList":[0,1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16,17,18,19,20,21,22,23,24,25,26,27,28,29,30,31,32,33,34,35,36,37,38,39,40,41,42,43,44,45,46,47,48,49,50,51,52,53,54,55,56,57,58,59,60,61,62,63,64,65,66,67,68,69,70,71,72,73,74,75,76,77,78,79,80,81,82,83,84,85,86,87,88,89,90,91,92,93,94,106,107,108,109,110,111,112,113,114,115,116,117,118,119,120,121,122,123,124,125,126,127,128,129,130,131,132,133,134,135,136,137,138,139],"mappings":"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CD;GACE,OAAO;GACP,WAAW;GACX,UAAU;GACV,SAAS;GACT,eAAe;GACf,WAAW;GACZ;EACD;GACE,OAAO;GACP,WAAW;GACX,UAAU;GACV,SAAS;GACT,eAAe;GACf,YAAY;IACV,IAAM;IACN,IAAM;IACN,IAAM;IACN,IAAM;IACP;GACD,UAAU;IACR,IAAM;IACN,IAAM;IACN,IAAM;IACN,IAAM;IACP;GACF;EAED;GACE,OAAO;GACP,WAAW;GACX,OAAO;GACP,SAAS;GACT,WAAW;GACX,eAAe;GACf,OAAO;GACP,OAAO;GACR;EACD;GACE,OAAO;GACP,WAAW;GACX,UAAU;GACV,SAAS;GACT,eAAe;GACf,kBAAkB;GACnB;EACD;GACE,OAAO;GACP,OAAO;GACP,WAAW;GACX,SAAS;GACT,WAAW;GACX,eAAe;GACf,OAAO;GACP,OAAO;GACP,gBAAgB;GAChB,SAAS,CACP;IAAE,MAAM;IAAM,OAAO;IAAQ,EAC7B;IAAE,MAAM;IAAM,OAAO;IAAS,CAC/B;GACF;EACD;GACE,OAAO;GACP,WAAW;GACX,OAAO;GACP,SAAS;GACT,eAAe;GAChB;EACD;GACE,OAAO;GACP,WAAW;GACX,SAAS;GACT,eAAe;GACf,WAAW;GACZ;EACD;GACE,OAAO;GACP,OAAO;GACP,WAAW;GACX,SAAS;GACT,eAAe;GACf,OAAO;GACR;EACF;AAuBD,QAtBI,EAAI,yBACN,EAAY,OAAO,GAAG,GAAG;EACvB,OAAO;EACP,WAAW;EACX,UAAU;EACV,SAAS;EACV,CAAC,EACF,EAAc,OAAO,KAAK;EACxB,MAAM;EACN,MAAM;EACN,OAAO;EACP,YAAY;EACZ,kBAAkB;EAClB,UAAU;EACV,YAAY;EACZ,cAAc;EACd,UAAU;EACV,UAAU;EACV,aAAa;EACb,SAAS;EACV,CAAC,GAEG;EACL,cAAc;EACd,WAAW;EACX;EACA;EACA;EACA,UAAA;EACA,eAAA;EACA,WAAW,GAAW;EACtB,mBAAmB;EACnB,uBAAuB;EACvB,wBAAwB;EACxB,4BAA4B;EAC5B,QAAQ;EACT;kDC3SH,YAoXS;CACL,aApXiC;EACjC;GACE,OAAO;GACP,WAAW;GACX,SAAS;GACT,OAAO;GACP,OAAO;GACR;EACD;GACE,OAAO;GACP,OAAO;GACP,WAAW;GACX,SAAS;GACT,UAAU;GACV,WAAW;GACZ;EACD;GACE,OAAO;GACP,OAAO;GACP,WAAW;GACX,SAAS;GACT,UAAU;GACV,WAAW;GACZ;EACD;GACE,gBAAgB;GAChB,eAAe;GACf,YAAY;IACV,QAAQ;IACR,OAAO;IACR;GACD,UAAU;IACR,QAAQ;IACR,OAAO;IACR;GACD,SAAS,CACP;IACE,OAAO;IACP,MAAM;IACP,EACD;IACE,OAAO;IACP,MAAM;IACP,CACF;GACD,OAAO;GACP,OAAO;GACP,WAAW;GACX,SAAS;GACT,UAAU;GACV,WAAW;GACX,kBAAkB;GACnB;EACD;GACE,OAAO;GACP,OAAO;GACP,WAAW;GACX,SAAS;GACT,UAAU;GACV,WAAW;GACZ;EACD;GACE,OAAO;GACP,OAAO;GACP,WAAW;GACX,SAAS;GACT,UAAU;GACV,WAAW;GACX,eAAe;GACf,kBAAkB;GACnB;EACD;GACE,gBAAgB;GAChB,eAAe;GACf,YAAY;IACV,MAAM;IACN,OAAO;IACR;GACD,UAAU;IACR,MAAM;IACN,OAAO;IACR;GACD,SAAS,CACP;IACE,OAAO;IACP,MAAM;IACP,EACD;IACE,OAAO;IACP,MAAM;IACP,CACF;GACD,OAAO;GACP,OAAO;GACP,WAAW;GACX,SAAS;GACT,UAAU;GACV,WAAW;GACX,kBAAkB;GACnB;EACD;GACE,aAAa;GACb,OAAO;GACP,OAAO;GACP,WAAW;GACX,SAAS;GACT,UAAU;GACV,WAAW;GACZ;EACD;GACE,aAAa;GACb,OAAO;GACP,OAAO;GACP,WAAW;GACX,SAAS;GACT,UAAU;GACV,WAAW;GACZ;EACF;CA+PC,iBA9PsB;EACtB,UAAU;GACR,YAAY;GACZ,QAAQ;GACR,KAAK,EAAE;GACR;EACD,kBAAkB,CAChB,EACE,UAAU;GACR;IACE,MAAM;IACN,MAAM;IACN,OAAO;IACP,UAAU;IACV,YAAY;IACZ,WAAW;IACX,WAAW;IACX,cAA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OACX,kBAAkB,CAChB,CACE;QACE,YAAY;QACZ,YAAY;QACZ,UAAU;QACV,OAAO,CAAC,GAAK;QACb,QAAQ;QACR,YAAY;QACb,CACF,CACF;OACD,wBAAwB,CACtB;QACE,YAAY;QACZ,YAAY;QACZ,OAAO;QACR,CACF;OACD,SAAS;OACT,MAAM;OACN,KAAK;OACL,MAAM;OACN,MAAM;OACN,MAAM;OACN,QAAQ;OACR,YAAY,CACV,CACE;QACE,UAAU;QACV,YAAY;QACZ,UAAU;QACV,OAAO,CAAC,GAAM;QACf,CACF,CACF;OACD,OAAO;QACL,QAAQ;QACR,SAAS;SACP;UACE,OAAO;UACP,WAAW;UACX,eAAe;UACf,QAAQ,EACN,UAAU,GACX;UACD,YAAY;UACZ,WAAW;UACX,OAAO;UACP,WAAW;UACX,UAAU;UACX;SACD;UACE,OAAO;UACP,WAAW;UACX,eAAe;UACf,YAAY;UACZ,WAAW;UACX,OAAO;UACP,WAAW;UACX,UAAU;UACX;SACD;UACE,OAAO;UACP,WAAW;UACX,eAAe;UACf,YAAY;UACZ,WAAW;UACX,OAAO;UACP,WAAW;UACX,UAAU;UACX;SACF;QACD,eAAe,CACb;SACE,YAAY;SACZ,OAAO;SACP,oBAAoB;SACpB,YAAY;SACZ,aAAa;SACb,QAAQ;SACR,eAAe;UACb;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACA;UACD;SACD,kBAAkB;SAClB,YAAY;SACZ,WAAW;SACX,cAAc;SACd,MAAM;SACP,CACF;QACF;OACF;MACF;KACF,CACF;IACD,OAAO;KACL,MAAM;KACN,SAAS;KACT,SAAS;KACV;IACD,OAAO,EAAE;IACT,SAAS;KACP,SAAS,CACP;MACE,OAAO;MACP,WAAW;MACX,MAAM;MACP,EACD;MACE,OAAO;MACP,WAAW;MACX,MAAM;MACP,CACF;KACD,cAAc;MACZ;OACE,WAAW;OACX,OAAO;OACP,MAAM;OACP;MACD;OACE,WAAW;OACX,OAAO;OACP,MAAM;OACP;MACD;OACE,WAAW;OACX,OAAO;OACP,MAAM;OAC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"}
|